真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

AndroidStrictMode運(yùn)行流程(推薦)-創(chuàng)新互聯(lián)

什么是 StrictMode(嚴(yán)苛模式)

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括西峽網(wǎng)站建設(shè)、西峽網(wǎng)站制作、西峽網(wǎng)頁制作以及西峽網(wǎng)絡(luò)營(yíng)銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,西峽網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到西峽省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

strictmode是android在 API9后引入的檢測(cè)影響app運(yùn)行流暢性的一種機(jī)制,例如我們都知道的主線程中不允許有網(wǎng)絡(luò)操作這條規(guī)則就是嚴(yán)苛模式規(guī)則的一種.

strictmode.java 這個(gè)類中設(shè)定了許多detect標(biāo)志位例如 DETECT_NETWORK ,還有許多 penalty標(biāo)志位例如 PENALTY_NETWORK , DETECT標(biāo)志位決定strictmode是否要對(duì)這項(xiàng)內(nèi)容進(jìn)行檢測(cè),PENALTY標(biāo)志位決定了在這項(xiàng)內(nèi)容發(fā)生時(shí)是否要拋出異常(相當(dāng)于一種懲罰機(jī)制,PENALTY的意思就是懲罰).

StrictMode 類的作用之一就是對(duì)這些標(biāo)志位進(jìn)行管理,通過 setThreadPolicy() 方法可以設(shè)定 Policy 變量中的mask值.

之后會(huì)將 POLICY 變量傳入 BlockGuard 中,BlockGuard 運(yùn)行在 Dalvik虛擬機(jī)中,對(duì)所有的異常操作進(jìn)行統(tǒng)一的管理.

Android官方文檔中對(duì)于strict mode 給出的解釋

strictmode 是一種開發(fā)工具,引入它可以使你發(fā)現(xiàn)在開發(fā)過程中產(chǎn)生的問題,并修復(fù)它們.

在 application main thread中常有UI相關(guān)的操作和動(dòng)畫發(fā)生,strictmode可以在主線程中檢測(cè)硬盤和網(wǎng)絡(luò)相關(guān)的操作.將硬盤讀寫操作和網(wǎng)絡(luò)相關(guān)操作挪出主線程可以使你的app更加流暢和具有響應(yīng)性.同時(shí)為了使app更加響應(yīng)性,你可以屏蔽ANR發(fā)生時(shí)彈出的dialog.

需要注意的是,盡管android設(shè)備的硬盤類型大多為 flash memory,建立在這種存儲(chǔ)介質(zhì)上的文件系統(tǒng)的并發(fā)性仍然是非常有限的(速度上肯定是RAM比較快).

大部分情況下,硬盤的讀寫操作都是非常快的,但在某些情況下,后臺(tái)進(jìn)程中會(huì)運(yùn)行耗費(fèi)很大的I/O操作,在這種情況下,app的響應(yīng)速度會(huì)下降很多.

一.setThreadPolicy()流程

StrictMode類的文檔中給出的strictmode啟動(dòng)方式

 * public void onCreate() {
 * if (DEVELOPER_MODE) {
 * StrictMode.setThreadPolicy(new {@link ThreadPolicy.Builder StrictMode.ThreadPolicy.Builder}()
 *  .detectDiskReads()
 *  .detectDiskWrites()
 *  .detectNetwork() // or .detectAll() for all detectable problems
 *  .penaltyLog()
 *  .build());
 * StrictMode.setVmPolicy(new {@link VmPolicy.Builder StrictMode.VmPolicy.Builder}()
 *  .detectLeakedSqlLiteObjects()
 *  .detectLeakedClosableObjects()
 *  .penaltyLog()
 *  .penaltyDeath()
 *  .build());
 * }
 * super.onCreate();

分享名稱:AndroidStrictMode運(yùn)行流程(推薦)-創(chuàng)新互聯(lián)
文章來源:http://weahome.cn/article/dcecpg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部