要在Android中獲取當前Activity的信息,可以通過以下方式之一:
ActivityManager
類來獲取當前正在運行的Activity的信息:ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> runningTasks = activityManager.getRunningTasks(1);
if (!runningTasks.isEmpty()) {
ComponentName componentName = runningTasks.get(0).topActivity;
String currentActivityName = componentName.getClassName();
// 獲取當前Activity的信息
}
ActivityLifecycleCallbacks
接口來監聽Activity生命周期變化,并在onActivityCreated
回調方法中獲取當前Activity的信息:public class AppLifecycleHandler implements Application.ActivityLifecycleCallbacks {
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
String currentActivityName = activity.getClass().getSimpleName();
// 獲取當前Activity的信息
}
// 其他回調方法...
}
在Application
類中注冊該監聽器:
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
registerActivityLifecycleCallbacks(new AppLifecycleHandler());
}
}
這樣,在每次Activity創建時,都會調用onActivityCreated
方法,從而獲取當前Activity的信息。
請注意,由于Android系統版本的不同,某些方法可能已被棄用或不再可用。因此,建議在具體實現中根據你的應用程序和目標Android版本進行相應的調整。