android 開發坑點記錄

  1. 撥號功能
    1) 調用撥號界面前須要判斷當前設備是否有撥號程序,可以使用try-catch捕獲打開異常,避免應用閃退
  2. webview開發問題
    1) 緩存問題——沒有開啓緩存可能致使網頁部分功能不能正常使用,而出現異常狀況
    2) WebViewClient對象下的方法都爲異步回調方法,若是在這些方法有android UI相關操做則須要注意activity關閉時再也不執行到相應的操做,好比dialog的關閉操做,在onDestroy()中提早執行,同時dialog的顯示和關閉要使用同步鎖
    3) url攔截會致使頭信息丟失(還可能有其餘信息丟失),從而致使一些功能異常,所以需慎用
    4) 關於302重定向問題,還未解決
  3. 懸浮窗口問題
    1) 懸浮窗屢次添加會致使閃退——在添加或移除懸浮窗的代碼外圍使用try-catch捕獲異常,避免閃退
    2) 懸浮按鈕如需全局移動則須要將flags屬性設置爲FLAG_LAYOUT_IN_SCREEN,但不要同時設置FLAG_LAYOUT_INSET_DECOR,不然在狀態欄下懸浮按鈕會被遮擋住部分視圖
  4. 文件操做問題
    1) 在主線程中執行文件操做在少許4.4機型中可能會出現ANR,所以爲了不ANR,儘可能不要在主線程中操做文件
  5. 多界面同時切換問題(android系統bug)
    1) 噹噹前應用在切換界面的同時也在切換應用的時候,部分機型會出現ANR,當界面頻繁快速切換時也有可能出現 —— 儘可能避免頻繁切換界面且在應用跳轉時不要執行界面切換相關操做
  6. 第三方登陸:
    1)QQ受權登陸的簽名配置須要所有小寫
    2)微信受權登陸的簽名配置須要所有大寫
    3)注意包名、appID必須和第三方後臺配置一至
    4)若是配置信息都一至,仍是沒法受權,則多是緩存問題(如:微信緩存了錯誤的簽名票據)
    5)簽名的填寫千萬千萬不要手動敲,必定要複製,否則極容易出錯(已踩坑,並且是很深很深的坑)
    6)QQ提供的簽名獲取工具沒法獲取一些應用的簽名,可使用微信或微博提供的簽名獲取工具獲取
  7. 在manifast文件中配置meta-data數據時,若是屬性value的值爲一長串的數字,那麼必須在前面加上」\ 「(斜槓和空格),不然編譯以後,該數值會被修改,從而形成錯誤;如本來value=」1234567890123」,那麼應該改爲value=」\ 1234567890123」,這樣編譯出來的apk中對應的值纔是正確的
  8. android 使用Animation.startNow()啓動動畫時會有兼容問題,使用View.startAnimation(Animation)啓動動畫能夠解決該問題
  9. 待補充。。。
相關文章
相關標籤/搜索