移動性能優(yōu)化-4、360手機衛(wèi)士紀綱_第1頁
移動性能優(yōu)化-4、360手機衛(wèi)士紀綱_第2頁
移動性能優(yōu)化-4、360手機衛(wèi)士紀綱_第3頁
移動性能優(yōu)化-4、360手機衛(wèi)士紀綱_第4頁
移動性能優(yōu)化-4、360手機衛(wèi)士紀綱_第5頁
免費預(yù)覽已結(jié)束,剩余27頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

內(nèi)容列表預(yù)防性能問題性能問題修復(fù)技術(shù)代碼檢測工具自動化分析資源優(yōu)化工具APK構(gòu)建檢測代碼檢測工具LINT掃描代碼文件lint.xmlLINT

TOOLCorrectnessUsabilitySecurityAccessibilityPerformance

…代碼檢測工具FINDBUGS——深度定制原生findbugs認為有問題代碼檢測工具代碼火線—不可穿越的火線UI線程的耗時操作頻繁查找資源頻繁創(chuàng)建對象過度刷新Adapter復(fù)用布局扁平直接使用大UIDex加載解壓數(shù)據(jù)延遲加載任務(wù)調(diào)度PerfWebviewJekins任務(wù)平臺業(yè)務(wù)服務(wù)器數(shù)據(jù)源JekinsPC節(jié)點代碼倉庫模塊數(shù)據(jù)控制器crashfindbugsmailmodulewarningreportModulescrashfindbugsmailmodulewarningnetworkDBfilecontrolerdoGetdoPostdo自動化分析系統(tǒng)和平臺自動化分析舉例輸出APK構(gòu)建重復(fù)資源壓縮法寶:制度資源下一個預(yù)防性能問題性能問題修復(fù)技術(shù)埋點收集信息常規(guī)性能觀察者工具性能分析工具Aspectj重寫器介紹及應(yīng)用基于java的面向切面的編程語言靜態(tài)植入:編譯時期文件中完成織入電量網(wǎng)絡(luò)交互常規(guī)性能預(yù)防性能問題性能問題修復(fù)技術(shù)埋點收集信息常規(guī)性能觀察者工具性能分析工具進程冷熱啟動四大組件啟動速度各個線程卡慢檢測異步處理性能檢測進程的冷熱啟動進程冷熱啟動Context::startXContext::bindXApplication::attachApplication::onCreateActivity:onCreateCustomInstrumentation::callApplicationOnCreateservice:

exported?activity:

exported?

UI?Provider:

exported?Receiver:

exported?四大組件啟動舉例—Activity的加載時間關(guān)鍵字:

ActivityThreadInstrumentationCustomInstrumentationpublic

void

callActivityOnCreate(Activity

activity,

Bundle

icicle)

{//...//收集

需要的activity信息

。long

bTim

=

System.currentTimeMillis();rTRunnable.setBeginTime(bTim

,

ponentName().getClassName());super.callActivityOnCreate(activity,

icicle);//activity繪制完成后,執(zhí)行回調(diào)函數(shù),用來記錄時間activity.getWindow().getDecorView().post(rTRunnable);//...}線程卡慢采樣時間發(fā)送檢測信息Handle::postHandle::dispatessageCustomInstrumentation::waitForIdleCustomInstrumentation::waitForIdleSyncPublic

void

CustomInstrumentaion::waitForIdle(){//…mMessageQueue.addIdleHandler(new

Idler(recipient));mThread.getHandler().post(new

EmptyRunnable(t));//…}異步處理的性能異步處理靜態(tài)埋點對象:Handle::post(Runnable

r)Handle::postAtTime(Runnable

r,

long

uptimeMillis)Handle::postAtTime(Runnable

r,

Object

token,

longuptimeMillis);Handle::postDelayed(Runnable

r,

long

delayMillis)Handle::postAtFrontOfQueue(Runnable

r)常規(guī)性能預(yù)防性能問題性能問題修復(fù)技術(shù)埋點收集信息常規(guī)性能觀察者工具性能分析工具進程冷熱啟動四大組件啟動速度各個線程卡慢檢測異步處理性能檢測Java

反射四大組件的onCreate執(zhí)行時間ClassLoader.getResourceAsStream第

SDK卡慢工具預(yù)防性能問題性能問題修復(fù)技術(shù)埋點收集信息常規(guī)性能觀察者工具性能分析工具LeakCanary分析工具(例:內(nèi)存)APM集成工具——Argus

APM觀察者AppLeakCanary檢查Activity是否泄漏的問題,通過onDestroy方法檢查,存在泄漏,則會dump內(nèi)存鏡像,獲取棧信息內(nèi)存分析分析方法Dalvik

Heap

DataHPROFadb

s kill-10Debug.dumpHprofDataDDMS

dump

hprof

filehprof-conv內(nèi)存分析分析方法meminfomapssmapsmem內(nèi)存分析分析方法輸出工具內(nèi)存分析ArgusAPM非侵入式支持插件性能云端靈活配置實時收集實時分析友好的數(shù)據(jù)平臺支持針對開發(fā)的DEBUG模式ArgusAPM交互體驗性能應(yīng)用啟動組件生命周期幀率網(wǎng)絡(luò)性能上傳

流量網(wǎng)絡(luò)錯誤內(nèi)存性能進程內(nèi)存信息內(nèi)存詳情傳感器性能傳感器信息使用時長CPU性能瞬時使用率平均使用率電池電量電量信息耗電詳情IO性能文件數(shù)據(jù)庫ANR問題ANR詳情ANR趨勢檢測ArgusAPM實多實擴控漂時維時展制亮分度分能能的析過析力力報濾表ArgusAPMDEBUG

模式實時性能實時本地分析警告信息日志記錄性能問題可追溯制度:接入QA

Bug庫多進程支持內(nèi)容列表預(yù)防性能問題性能問題修復(fù)技術(shù)工具數(shù)據(jù)分析控制平臺用戶反饋檢測用戶設(shè)備性能基本信息雙卡信息

ROOT信息網(wǎng)絡(luò)信息自動分析耗電分析屏幕密度生成內(nèi)存鏡像文件

Method

TracingCPU/內(nèi)存…...用戶反饋檢測用戶設(shè)備性能內(nèi)容列表預(yù)防性能問題性能問題修復(fù)技術(shù)熱修復(fù)技術(shù)插件化技術(shù)RePlugin選擇插件極其靈活易于集成非常穩(wěn)定特性豐富倉庫地址:

/Qihoo360/RePlugin總結(jié)手機衛(wèi)士性能優(yōu)化方案預(yù)防性能問題性能問題修復(fù)技術(shù)熱修復(fù)技術(shù)插件化技術(shù)—RePlugin代碼檢測工具自動化分析系統(tǒng)資源優(yōu)化工具APK

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論