每一個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)可能導致的問題
然而,硬件加速並不支持所有的2D畫圖的操作,這時開著它,可能會影響到你的自定義控件或者繪畫,出現異常等行為,所以的android對於硬件加速提供了可選性如果你的應用執行了自定義的繪畫,可以通過在真機上測試開啟硬件加速查找問題。
在Android 4.0的某些設備上,在View刷新時會出現花屏和屏幕上的某些查看錯位的現象。經過調查後發現adb logcat中出現很多OpenGLRenderer: 0x501的錯位:
【Android】TTS功能失效?
一切都蠻順利的,在開發完成的時候將APK裝在另一台測試機就拿出去DEMO~
就突然發生了,TTS的功能沒有動作....
一隻手機的Android版本4.4.2,另一隻 5.0.2...
【Android】ExpandableListView 擴展的ListView
可擴展收納式的ListView,好處當然是可以讓APP的UI看起來更簡潔不占空間~
在官方的API文件中其實就可以看到有提供這種功能的API文件
ExpandableListView 官方 API 文件
"ExpandableListView"
網路稍微爬一下就可以看到很多範例,在這我們就做點小修正
【Android】防止過快點擊造成事件重複執行
點擊事件是Android開發中最常見的事件,正常情況下不會有什麽問題
但總時會有所謂的突發狀況(設備效能,使用者操作行為)
Android設備的機型多且雜(還不包含白牌設備),如果碰到運算效能較差的手機,
則有可能在點擊時造成延遲現象。碰到這種現象,用戶可能以為沒反應而再次點擊一次,
造成事件重複調用兩次的Bug。
【Android】android.view.InflateException: Binary XML file line #1: Error inflating class
網路上這個錯誤的log稍微查一下可以看到蠻多的可能造成這個錯誤的點
(如下圖)
【Android】Retrofit 動態參數(非固定參數、非必須參數)
剛好來記錄一下一個小問題
今天在我們需要透過Retrofit 來跟API溝通時有時候會需要帶入額外的參數
但如果在參數有可能變動下時候是不是就要做兩套一樣的東西?
(只是一個有帶參數,一個沒有)那麼方便的Retrofit當然有解~
【Android】關於Fragment異常的問題(java.lang.IllegalStateException: Fragment not attached to Activity)
Fragment還沒有Attach到Activity時,調用了如getResource()等,需要上下文Content的函數。
造成crash
【Java】Enum的使用方式
今日在寫Android時突然想到switch能不能跟string一起使用
稍微問了一下我師父"谷哥"下了一下關鍵字 "android switch string"
就可以看到很多有趣的文章與解法
在StackOverFlow就看到了一個有趣的東西"Enum"
【Android】EditText : 修改android虛擬鍵盤的Enter鍵功能
一般EditText在輸入時虛擬鍵盤上的Enter鍵都預設為"換行"
要改變為其他種類的按鍵只要在layout檔中加入"android : imeOptions"屬性
訂閱:
文章 (Atom)