【Android】RecyclerView 單選功能實現

自從成為一個Android開發者到現在默默的也7 8年有了,某天開始突然想到要整理一下自己碎片化的一些資訊,自己的履歷、練習範例、蒐藏的文章等等之類的,才突然又想起....原來我還有個部落格.... 既然又翻出來了,那就陸陸續續開始整理吧。Go go!

【Android】查詢Android版本被使用的比例

一般新手在開發Android APP的時候都不會去考慮到版本的問題(我曾經也是),但在開發一段時間後就會開始碰到一些"釘子",也就是遇到Android版本的問題,而這些問題就會牽扯到你寫出來的APP在各個Android版本的相容性...

【Android】 largeHeap介紹

每一個Android設備都會有不同的RAM總大小與可用空間,因此不同設備為app提供了不同大小的heap限制。你可以通過調用getMemoryClass())來獲取你的app的可用heap大小。如果你的app嘗試申請更多的內存,會出現OutOfMemory的錯誤。

【Android】OutOfMemoryError 錯誤訊息 (使用largeHeap解決)

OOM(OutOfMemoryError)  Android 開發常會遇到的一個問題
這次遇到的錯誤Log是:
 (java.lang.OutOfMemoryError: Failed to allocate a 23970828 byte allocation with 2097152 free bytes and 2MB until OOM)
 

【Android】 硬件加速(hardwareAccelerated)可能導致的問題


Android 3.0(API level 11),開始支持所有的視圖的畫布都將使用GPU,但是是硬件的加速會佔用一定的RAM。在API> = 14上,默認是開啟的,如果你的應用只是標準的View和可拉伸,全局都打開硬件加速,是不會有任何問題的。

然而,硬件加速並不支持所有的2D畫圖的操作,這時開著它,可能會影響到你的自定義控件或者繪畫,出現異常等行為,所以的android對於硬件加速提供了可選性如果你的應用執行了自定義的繪畫,可以通過在真機上測試開啟硬件加速查找問題。

在Android 4.0的某些設備上,在View刷新時會出現花屏和屏幕上的某些查看錯位的現象。經過調查後發現adb logcat中出現很多OpenGLRenderer: 0x501的錯位: