Improving Battery Life and Performance

0x1 工具

  • XCTestMetrics 性能測量
  • MetricKit 線上手機(jī)電量和性能信息
  • Xcode指標(biāo)信息(Organizer) 在Xcode中查看 聚合電量/性能/IO等指標(biāo)

0x2 指標(biāo)

  • processing (CPU)
  • Location (可以分析出不必要的定位 后臺(tái)定位 長時(shí)間定位)
  • Display (APL OLED 深色省電 淺色費(fèi)電)
  • Networking(可以分析出 預(yù)期外的上傳下載 弱網(wǎng)環(huán)境)
  • Accessories(藍(lán)牙等配件)
  • Multimedia
  • Camera
  • Performance 指標(biāo)
    • App掛起(阻塞主線程,盡可能把work移到非主線程,利用gcd處理異步任務(wù))
    • 磁盤利用率 (監(jiān)測意料之外的讀寫,)
    • App啟動(dòng) (監(jiān)測啟動(dòng)和恢復(fù)到前臺(tái)的性能)
    • 內(nèi)存峰值 ,平均峰值(可以標(biāo)示出難以重現(xiàn)的內(nèi)存泄漏,進(jìn)入到后臺(tái)是減少內(nèi)存使用)
    • 自定義指標(biāo)

0x3 詳細(xì)介紹

before


image.png

after 在XCTest中增加了時(shí)鐘,cpu,內(nèi)存的指標(biāo)監(jiān)控


image.png

測量啟動(dòng)性能
image.png

XCTest 指標(biāo)使用場景

  • 可以監(jiān)控CPU,內(nèi)存,存儲(chǔ),時(shí)鐘,OSSignpost
  • 自定義指標(biāo)
  • A/B testing 性能測試
  • 自動(dòng)集成與自動(dòng)化測試

MetricKit

  • 收集Framework 電量和性能指標(biāo)
  • 可以指示出代碼問題
  • 尊重用戶隱私
  • 開箱即用
  • 隔日有效(收集24小時(shí)的數(shù)據(jù)統(tǒng)計(jì)出報(bào)表再上報(bào))
    代碼示例


    image.png

    image.png

MetricKit’s mxSignposts

image.png

MetricKit 報(bào)告示例

image.png
  • 定位異常


    image.png
  • app掛起異常


    image.png
  • 動(dòng)畫效果過多占比50%


    image.png

0x4 總結(jié)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容