Android小技巧(3)

jopen 9年前發布 | 22K 次閱讀 Android Android開發 移動開發

原文出處: Dan Lew   譯文出處:高建武的博客(@高建武_Gracker)

前言

本文是一篇譯文,這篇是這個系列的第三篇。講述的是Android開發中遇到的一些好用的小技巧,或者一些實用的API,很多人都知道,但也有人不知道,記錄下來,如果能幫助到大家,也是極好的。由于不是嚴格的博文,所以翻譯也不那么嚴格,有些工具和類我也會經常用,所以我會根據自己的想法去寫。有些地方坐在并沒有將這個工具的作用講出來,我會補充上去。

正文

UrlQuerySanitizer——使用這個工具可以方便對 URL 進行檢查。

Fragment.setArguments——因為在構建 Fragment 的時候不能加參數,所以這是個很好的東西,可以在創建 Fragment 之前設置參數(即使在 configuration 改變的時候仍然會導致銷毀/重建)。

DialogFragment.setShowsDialog ()—— 這是一個很巧妙的方式,DialogFragment 可以作為正常的 Fragment 顯示!這里可以讓 Fragment 承擔雙重任務。我通常在創建 Fragment 的時候把 onCreateView ()和 onCreateDialog ()都加上,就可以創建一個具有雙重目的的 Fragment。

FragmentManager.enableDebugLogging ()——在需要觀察 Fragment 狀態的時候會有幫助。

LocalBroadcastManager——這個會比全局的 broadcast 更加安全,簡單,快速。像 otto 這樣的 Event buses 機制對你的應用場景更加有用。

PhoneNumberUtils.formatNumber ()——顧名思義,這是對數字進行格式化操作的時候用的。

Region.op()——我發現在對比兩個渲染之前的區域的時候很實用,如果你有兩條路徑,那么怎么知道它們是不是會重疊呢?使用這個方法就可以做到。

Application.registerActivityLifecycleCallbacks——雖然缺少官方文檔解釋,不過我想它就是注冊 Activity 的生命周期的一些回調方法(顧名思義),就是一個方便的工具。

versionNameSuffix——這個 gradle 設置可以讓你在基于不同構建類型的 manifest 中修改版本名這個屬性,例如,如果需要在在 debug 版本中以”-SNAPSHOT”結尾,那么就可以輕松的看出當前是 debug 版還是 release 版。

CursorJoiner——如果你是只使用一個數據庫的話,使用 SQL 中的 join 就可以了,但是如果收到的數據是來自兩個獨立的 ContentProvider,那么 CursorJoiner 就很實用了。

Genymotion——一個非常快的 Android 模擬器,本人一直在用。

-nodpi——在沒有特別定義的情況下,很多修飾符(-mdpi,-hdpi,-xdpi等等)都會默認自動縮放 assets/dimensions,有時候我們需要保持顯示一致,這種情況下就可以使用 -nodpi。

BroadcastRecevier.setDebugUnregister ()——又一個方便的調試工具。

Activity.recreate ()——強制讓 Activity 重建。

PackageManager.checkSignatures ()——如果同時安裝了兩個 app 的話,可以用這個方法檢查。如果不進行簽名檢查的話,其他人可以輕易通過使用一樣的包名來模仿你的 app。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!