android開發大坑彙總android
1.EditText --> gravity與hint衝突
web
表如今2.X版本當在EditText設置android:gravity="center"屬性後,android:hint會無效。算法
解決辦法:再添加android:ellipsize="start"就會好了。cookie
感受:很無厘頭的大坑,記住吧!要不舊機子就只有顯示不出來的份。gradle
2.DatePickerDialog --> 時間超過最大值變爲最小時間時顯示出錯。動畫
解決辦法:暫無ui
感受:這個控件的bug一直存在,不少應用用這個控件。。
spa
3. 小米部分機型(例如:小米NOTE PRO, 固件:5.1.1 LMY47V)。禁用WebView的硬件加速,會致使部分web動畫長時間不結束。影響用戶使用。解決方式:開啓硬件加速!code
android:hardwareAccelerated="true"
4. static 變量(靜態變量)被回收。進程
類的static變量會在內存少的時候類被回收後重置。
好比 static String cookies==‘xxxxxxxx’;回收後,cookies會被初始化爲原始值。
360的清理內存會觸發此操做。
Application中的static變量稍微耐久一些,360的清理內存不會致使static變量初始化。
可是小米的清理進程會致使Application徹底關閉。
5. 使用Fragment時,要確保父容器爲FrameLayout.
若是使用LinearLayout做爲父容器-》遇到大坑:fragment裏的layout_weight無效。
6. android gradle 2.0.0 以上
android {
buildTypes {
release {
minifyEnabled true
shrinkResources true
}
}
}
shrinkResources 會有問題。由於許多方法是經過反射方式來得到的。shrink方式會致使不少資源丟失。shrinkResource使用的算法有問題。 慎用 shrinkResources。