依存性を追加します。
実装 'com.github.markzhai:blockcanary-アンドロイド:1.5.0'
ツールが検出するために、インストールされ実行した後、カトン現象を実行している主要なUIスレッドを検出
パブリック クラス MainActivityは延びAppCompatActivity { 保護された ボイドのonCreate(バンドルsavedInstanceState){ スーパー.onCreate(savedInstanceState)を、 setContentView(R.layout.activity_main)。 SystemClock.sleep( 1000年); } }
メインインターフェイスカトン1秒をしてみましょう
パブリック クラス MyApplicationをが延びアプリケーション{ @Override 公共 ボイドのonCreate(){ スーパー.onCreate()。 BlockCanary.install(この、新しいAppContextを()))(開始。 } パブリック クラス AppContextをが延びBlockCanaryContext { // 默认卡顿阈值为1000msの 公共 INT provideBlockThreshold(){ リターン 1000 。 } // 输出的ログ パブリックストリングprovidePath(){ リターン"/ blockcanary /" ; } // サポートファイルをアップロードし 、公開 無効アップロード(zippedFileファイル){ スロー 新しい新しいUnsupportedOperationExceptionが(); } //はケイトンでカスタムアクションを提供することができます @Override 公共 ボイド{onBlock(コンテキストコンテキスト、たBlockInfoたBlockInfoを) System.out.println( "ブロッキング操作" ); } } }
カトンは、複数の第二の出力ログを検出しました
< アプリケーション アンドロイド:名 = "MyApplicationという。" アンドロイド:allowBackup = "true"の アンドロイド:アイコン = "@ミップマップ/ ic_launcher"
ステートメント名属性