4

BaseActivityGoogle アナリティクスを少し簡単にするために、アプリで を使用しています。

私の基本アクティビティでは、オーバーライドonStart()onStop()て EasyTracker にいくつかのものを送信します。BaseActivity適切なデータを送信できるように、アクティビティの名前を使用してスーパークラス コンストラクターを呼び出す必要があるように、コードをセットアップしたいと考えています。

でコンストラクターをセットアップしようとしましたがBaseActivity、動作しているように見えましたが、メイン アクティビティ ( を拡張するBaseActivity) 階層が矛盾しているというエラーが発生しました。

これを達成するために何ができるでしょうか?

4

1 に答える 1

3

コンストラクターではこれを行うことはできません。Android フレームワークは Android コンポーネント ( ServiceActivityBroadcastReceiverContentProvider) 自体をインスタンス化するので、それをいじることはできません。

私の提案は、基本アクティビティでオーバーライドし、オーバーライドされたメソッドからonCreate()サブクラスを呼び出すことです。基本アクティビティでは、 を呼び出すことでサブクラスの名前を取得できます。super.onCreate()onCreate()getClass().getName()

于 2013-05-30T21:21:32.743 に答える