私は、Firebase Performance Monitoringが出荷時にsome automatic tracesを提供していることに気付きました。 特に私はちょうど私が今やるべきことである冷たいアプリの開始時間のトレースを見ていました。 残念ながらもっと細かいデータが必要なので、私は自分でそれを行うことができると考えていましたが、これまでのところ、Androidアプリの真のコールドスタート時間を測定する合理的な方法を考え出すことができませんでした。ランチャーのアイコンをタップし、特定のアクティビティのUIを表示)。Firebaseアプリの起動時間プロファイリングはどのようにAndroidで動作しますか?
FirebasePerfProvider.onCreate
コールバックが呼び出されると、Firebaseはトレースを開始します。私が知っている限り、これはアプリケーションプロセスが開始された直後に起こるはずです。それは良いことですが、アプリケーションが通知(または一般的なブロードキャスト)を受信しても呼び出されることを意味します。ユーザーが実際にアプリを開くまでに終了しないでください。それは間違った時間を測定することを意味します。
SDKがオープンソースではないとすれば、これがどのように機能するかについてのより良い説明は見つかりませんでした。
もっと知っていますか?
ありがとうございました!これがどのように行われたかについての詳細はありますか?私はプロバイダが作成されている状況をどのように判断するのかは分かりません。 – simekadam
私はエンジニアの一人から概要を得ましたが、詳細は調査していません。 –
私は実際に 'ActivityManager'に問い合わせて、それから一番上のアクティビティを得ることができることに気付きました... – simekadam