11

アプリケーションのメイン アクティビティ クラスまたはクラス名を取得するにはどうすればよいですか?

どうもありがとう!

4

4 に答える 4

21

クラス名を取得する方法を説明してくれた Lee に感謝します。コードは次のとおりです。

String packageName = context.getPackageName();
Intent launchIntent = context.getPackageManager().getLaunchIntentForPackage(packageName);
String className = launchIntent.getComponent().getClassName();
于 2013-05-17T11:40:51.853 に答える
17

ランチャー アクティビティを取得するには、http://developer.android.com/reference/android/content/pm/PackageManager.html#getLaunchIntentForPackage(java.lang.String )を使用します。

getLaunchIntentForPackage

この Intent 呼び出しgetComponentNameで、返された CompomemtName 呼び出しからgetClassName

http://developer.android.com/reference/android/content/ComponentName.html

于 2012-05-13T20:24:16.270 に答える
-2

メインアクティビティに変数を設定するだけです...public static Activity activity = this;次に、を使用してどこからでも参照できますMainActivity.activity

onCreate() メソッドで設定することもできます。このようにメイン アクティビティ クラスの先頭に変数を設定してからpublic static Activity activity;、onCreate() メソッドで任意の場所に追加しactivity = this;ます。

これは、Activity を拡張するすべてのクラスで機能します。たとえば、Activity を拡張public class MainActivity extends Activityしないクラスからでも変数を呼び出すことができます。

お役に立てれば。

于 2012-11-10T21:57:12.337 に答える