91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android?app啟動節點與上報啟動的方法

發布時間:2022-04-29 10:11:49 來源:億速云 閱讀:130 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Android app啟動節點與上報啟動的方法”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Android app啟動節點與上報啟動的方法”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

    app啟動的關鍵節點

    經常利用content provider 和Androidx里的 startup庫來對庫進行初始化操作,那么app啟動關鍵方法的執行順序是什么樣的呢? 怎么樣控制我的庫的啟動順序?

    參考這篇文章: Android 多個 ContentProvider 初始化順序

    精髓在這張圖里:

    Android?app啟動節點與上報啟動的方法

    回答上面的問題: 怎么樣控制我的庫的啟動順序?

    推薦用contentprovider,設置initOrder.

    不推薦用startup,因為它只能在dependices()回調里通過依賴來控制,是強依賴,不夠靈活

    Android?app啟動節點與上報啟動的方法

    啟動時間怎么算

    方案1: 參考firebase:

    從第一個contentProvider的attachInfo,到第一個頁面的onReusme:

    app-start-foreground-background-traces:https://firebase.google.com/docs/perf-mon/app-start-foreground-background-traces?authuser=0&platform=android

    App start trace
    This trace measures the time between when the user opens the app and when the app is responsive. In the console, the trace's name is _app_start. The collected metric for this trace is "duration".

    Starts when the app's FirebasePerfProvider ContentProvider completes its onCreate method.

    Stops when the first activity's onResume() method is called.

    Note that if the app was not cold-started by an activity (for example, by a service or broadcast receiver), no trace is generated.

    看一下FirebasePerfProvider的配置:

    initOrder="101",基本是最大的. 項目里其他的Provider都沒有怎么配置initOrder

        <provider
                android:name="com.google.firebase.perf.provider.FirebasePerfProvider"
                android:authorities="${applicationId}.firebaseperfprovider"
                android:exported="false"
                android:initOrder="101" />

    可以自己搞個類似的trace打印/上報一下

    Android?app啟動節點與上報啟動的方法

    <provider
                android:name="com.xxx.logs.AppStartMeasurer"
                android:authorities="${applicationId}.AppStartMeasurer"
                android:exported="false"
                android:initOrder="102" />

    然后就可以看logcat的日志輸出+ trace平臺的統計了

    方案2 : ams

    adb 命令:

    adb shell am start -W 包名/入口activity全類名

    在控制臺會輸出日志:

    Android?app啟動節點與上報啟動的方法

    這里的時間會比方案1統計到的時間小一些

    讀到這里,這篇“Android app啟動節點與上報啟動的方法”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    韩城市| 公主岭市| 长治县| 博客| 册亨县| 大化| 客服| 辛集市| 宝丰县| 罗源县| 大庆市| 沁水县| 渭南市| 邹平县| 乌鲁木齐县| 来宾市| 夏津县| 凉城县| 乡城县| 肥西县| 乌恰县| 安义县| 涪陵区| 丰台区| 汤原县| 武汉市| 横山县| 临江市| 滕州市| 高青县| 原阳县| 防城港市| 磴口县| 和林格尔县| 漳州市| 贵州省| 汽车| 平利县| 冀州市| 三穗县| 恩平市|