Android开发最佳实践《IT蓝豹》
Android開發(fā)最佳實踐
? 移動開發(fā)Android經(jīng)驗分享應(yīng)用GoogleMaterial Design 摘要:前 段時間,Google公布了Android開發(fā)最佳實踐的一系列課程,涉及到一些平時開發(fā)過程中應(yīng)該保持的良好習慣以及如何使用最新的Android Design Support Library來快速實現(xiàn)官方推薦的Material Design樣式的應(yīng)用。10月14日-16日,由CSDN和創(chuàng)新工場聯(lián)合主辦的MDCC 2015中國移動開發(fā)者大會將在北京新云南皇冠假日酒店隆重召開,現(xiàn)在搶注大會門票,即享多重好禮!猛戳>>立即搶票。本文作者,平臺與技術(shù)Android專場演講嘉賓——騰訊Android工程師 胡凱熱愛開源與分享,維護Android官方培訓(xùn)課程協(xié)作項目,關(guān)注Android應(yīng)用的性能優(yōu)化的總結(jié)與分享,推崇Android官方最佳實踐。
前段時間,Google公布了 Android開發(fā)最佳實踐的一系列課程,涉及到一些平時開發(fā)過程中應(yīng)該保持的良好習慣以及如何使用最新的 Android Design Support Library來快速實現(xiàn)官方推薦的Material Design樣式的應(yīng)用。下面是個人的學習摘要總結(jié),不對的地方請多多交流指點,謝謝!
1)注意對隱式Intent的運行時檢查保護
類似打開相機,發(fā)送圖片等隱式Intent,是并不一定能夠在所有的Android設(shè)備上都正常運行。例如打開相機的隱式Intent,如果系統(tǒng)相 機應(yīng)用被關(guān)閉或者不存在相機應(yīng)用,又或者是相機應(yīng)用的某些權(quán)限被關(guān)閉等等情況都可能導(dǎo)致這個隱式的Intent無法正常工作。一旦發(fā)生隱式Intent找 不到合適的調(diào)用組件的情況,系統(tǒng)就會拋出ActivityNotFoundException的異常,如果我們的應(yīng)用沒有對這個異常做任何處理,那應(yīng)用就 會發(fā)生Crash。
預(yù)防這個問題的最佳解決方案是在發(fā)出這個隱式Intent之前調(diào)用resolveActivity做檢查,關(guān)于這個API的解釋以及用法如下:
然后這個API的使用范例如下:
[java]view plaincopy2)使用NotificationCompat兼容包來處理消息通知
為了解決Android系統(tǒng)版本差異導(dǎo)致的Notification兼容性問題,Android官方提供了 NotificationCompat兼容類來幫助開發(fā)實現(xiàn)體驗統(tǒng)一的Notification。通常來說,建立一個Notification至少會有三 種元素:圖標,標題,文本。我們通常會使用如下的代碼來實現(xiàn)一個基礎(chǔ)的Notification功能:
上面那段代碼,運行時候的效果應(yīng)該如下所示:
為了給上面的Notification添加點擊之后的響應(yīng)效果,我們還需要構(gòu)造一個PendingIntent作為contentIntent,例如:
[java] view plaincopy為了使得Notification更加的具有辨識度,我們還有可能做如下的設(shè)置:
從Android 4.1開始,Notification可以支持展開顯示的模式,這樣一來,Notification就演變出了下面4種不同的風格樣式:
Notification還提供了快捷操作的功能,如下圖所示:
除了顯示在手機上的Notification,我們還可以給Notification分別設(shè)置在Wearable,Auto上的不同表現(xiàn)行為,例如針對可穿戴設(shè)備上顯示Notification,我們可以如下的設(shè)置:
關(guān)于更多的Wearable上的Notification相關(guān)的知識,還可以參考 Pages of Content與 Stackable Notifications。
轉(zhuǎn)載于:https://www.cnblogs.com/yangguangcheng/p/4866244.html
總結(jié)
以上是生活随笔為你收集整理的Android开发最佳实践《IT蓝豹》的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: WinHEC(Windows硬件proj
- 下一篇: Android Listview中But