日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android7.0占用空间,Android7.0 开发者注意事项

發(fā)布時間:2023/12/10 Android 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android7.0占用空间,Android7.0 开发者注意事项 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、當(dāng)設(shè)備處于充電狀態(tài)且屏幕已關(guān)閉一定時間后,設(shè)備會進(jìn)入低電耗模式并應(yīng)用第一部分限制:關(guān)閉應(yīng)用網(wǎng)絡(luò)訪問、推遲作業(yè)和同步。如果進(jìn)入低電耗模式后設(shè)備處于靜止?fàn)顟B(tài)達(dá)到一定時間,系統(tǒng)則會對 PowerManager.WakeLock、AlarmManager 鬧鈴、GPS 和 WLAN 掃描應(yīng)用余下的低電耗模式限制。無論是應(yīng)用部分還是全部低電耗模式限制,系統(tǒng)都會喚醒設(shè)備以提供簡短的維護(hù)時間窗口,在此窗口期間,應(yīng)用程序可以訪問網(wǎng)絡(luò)并執(zhí)行任何被推遲的作業(yè)/同步。

2、面向 Android 7.0 開發(fā)的應(yīng)用不會收到CONNECTIVITY_ACTION廣播,即使它們已有清單條目來請求接受這些事件的通知。在前臺運行的應(yīng)用如果使用BroadcastReceiver請求接收通知,則仍可以在主線程中偵聽CONNECTIVITY_CHANGE。

3、應(yīng)用無法發(fā)送或接收ACTION_NEW_PICTURE或ACTION_NEW_VIDEO廣播。此項優(yōu)化會影響所有應(yīng)用,而不僅僅是面向 Android 7.0 的應(yīng)用。

5、傳遞軟件包網(wǎng)域外的file://URI 可能給接收器留下無法訪問的路徑。因此,嘗試傳遞file://URI 會觸發(fā)FileUriExposedException。分享私有文件內(nèi)容的推薦方法是使用FileProvider。

7、Android 7.0在“Welcome”屏幕中加入了“Vision Settings”,用戶可以在新設(shè)備上設(shè)置以下無障礙功能設(shè)置:Magnification gesture、Font size、Display size和話語提示。此項變更讓您可以更容易發(fā)現(xiàn)與不同屏幕設(shè)置有關(guān)的錯誤。要評估此功能的影響,您應(yīng)在啟用這些設(shè)置的狀態(tài)下測試應(yīng)用。您可以在Settings > Accessibility中找到這些設(shè)置。

8、從 Android 7.0 開始,系統(tǒng)將阻止應(yīng)用動態(tài)鏈接非公開 NDK 庫,這種庫可能會導(dǎo)致您的應(yīng)用崩潰。此行為變更旨在為跨平臺更新和不同設(shè)備提供統(tǒng)一的應(yīng)用體驗。即使您的代碼可能不會鏈接私有庫,但您的應(yīng)用中的第三方靜態(tài)庫可能會這么做。因此,所有開發(fā)者都應(yīng)進(jìn)行相應(yīng)檢查,確保他們的應(yīng)用不會在運行 Android 7.0 的設(shè)備上崩潰。如果您的應(yīng)用使用原生代碼,則只能使用公開?NDK API。

9、所有應(yīng)用在調(diào)用既非公開又不可暫時訪問的 API 時都會生成一個運行時錯誤。結(jié)果就是System.loadLibrary和dlopen(3)同時返回NULL,并可能導(dǎo)致您的應(yīng)用崩潰。您應(yīng)檢查應(yīng)用代碼以移除對私有平臺 API 的使用,并使用預(yù)覽版設(shè)備或模擬器全面測試應(yīng)用。如果您不確定您的應(yīng)用是否使用私有庫,您可以檢查?logcat以識別運行時錯誤。

10、如果一個應(yīng)用在 Android 7.0 上運行,但卻是針對更低 API 級別開發(fā)的,那么在用戶更改顯示尺寸時,系統(tǒng)將終止此應(yīng)用進(jìn)程。應(yīng)用必須能夠妥善處理此情景。否則,當(dāng)用戶從最近使用記錄中恢復(fù)運行應(yīng)用時,應(yīng)用將會出現(xiàn)崩潰現(xiàn)象。

11、您應(yīng)測試應(yīng)用以確保不會發(fā)生此行為。要進(jìn)行此測試,您可以通過 DDMS 手動終止應(yīng)用,以造成相同的崩潰現(xiàn)象。

12、在密度發(fā)生更改時,系統(tǒng)不會自動終止面向 N 及更高版本的應(yīng)用;不過,這些應(yīng)用仍可能對配置變更做出不良響應(yīng)。

13、Android 7.0上的應(yīng)用應(yīng)能夠妥善處理配置變更,并且在后續(xù)啟動時不會出現(xiàn)崩潰現(xiàn)象。您可以通過更改字體大小 (Setting>Display>Font size) 并隨后從最近使用記錄中恢復(fù)運行應(yīng)用,來驗證應(yīng)用行為。

14、由于之前的 Android 版本中的一項錯誤,系統(tǒng)未能將對主線程上的一個 TCP 套接字的寫入操作舉報為違反嚴(yán)格模式。Android 7.0 修復(fù)了此錯誤。呈現(xiàn)出這種行為的應(yīng)用現(xiàn)在會引發(fā)android.os.NetworkOnMainThreadException。一般情況下,我們不建議在主線程上執(zhí)行網(wǎng)絡(luò)操作,因為這些操作通常會出現(xiàn)可能導(dǎo)致 ANR 和卡頓的高尾延遲。

15、Debug.startMethodTracing()方法系列現(xiàn)在默認(rèn)在您的共享存儲空間上的軟件包特定目錄中存儲輸出,而非 SD 卡根目錄。這意味著應(yīng)用不再需要請求WRITE_EXTERNAL_STORAGE權(quán)限來使用這些 API 。

16、許多平臺 API 現(xiàn)在開始檢查在Binder事務(wù)間發(fā)送的大負(fù)載,系統(tǒng)現(xiàn)在會將TransactionTooLargeExceptions作為RuntimeExceptions再次引發(fā),而不再只是默默記錄或抑制它們。一個常見例子是在Activity.onSaveInstanceState()上存儲過多數(shù)據(jù),導(dǎo)致ActivityThread.StopInfo在您的應(yīng)用面向 Android 7.0 時引發(fā)RuntimeException。

17、如果應(yīng)用向View發(fā)布Runnable任務(wù),并且View未附加到窗口,系統(tǒng)會用View為Runnable任務(wù)排隊;在View附加到窗口之前,不會執(zhí)行Runnable任務(wù)。此行為會修復(fù)以下錯誤:

18、如果一項應(yīng)用是從并非預(yù)期窗口 UI 線程的其他線程發(fā)布到View,則Runnable可能會因此運行錯誤的線程。

19、如果Runnable任務(wù)是從并非環(huán)路線程的其他線程發(fā)布,則應(yīng)用可能會曝光Runnable任務(wù)。

20、如果 Android 7.0 上一項有DELETE_PACKAGES權(quán)限的應(yīng)用嘗試刪除一個軟件包,但另一項應(yīng)用已經(jīng)安裝了這個軟件包,則系統(tǒng)需要用戶進(jìn)行確認(rèn)。在這種情況下,應(yīng)用在調(diào)用PackageInstaller.uninstall()時預(yù)計的返回狀態(tài)應(yīng)為STATUS_PENDING_USER_ACTION。

21、名為Crypto的 JCA 提供程序已棄用,因為它僅有的 SHA1PRNG 算法為弱加密。應(yīng)用無法再使用 SHA1PRNG(不安全地)派生密鑰,因為不再提供此提供程序。如需了解詳細(xì)信息,請參閱博文Android N?中已棄用“Crypto”安全提供程序。

總結(jié)

以上是生活随笔為你收集整理的Android7.0占用空间,Android7.0 开发者注意事项的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。