-1

私はチャット クライアントを構築しており、現在実行中のアクティビティ オブジェクト (彼の名前だけでなく) を取得できるようにしたいと考えています。

このアクティビティの意図オブジェクトを取得して、エクストラがあるかどうかを確認するためにこれが必要です..

そうすることは可能ですか?

私はこのコードを持っています:

ActivityManager mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> RunningTask = mActivityManager.getRunningTasks(1);
ActivityManager.RunningTaskInfo ar = RunningTask.get(0);
return ar.topActivity.toString();

しかし、それは私にそれの名前を与えるだけで、私はそれがオブジェクトである必要があります..

4

1 に答える 1

0

セキュリティ違反になるため、この方法でオブジェクトに直接アクセスできないと確信しています。この方法で(自分だけでなく)実行中のアクティビティにアクセスし、それらと対話したり、好みに合わせてそれらを強制終了したりできます。

設計を見直したほうがいいかもしれません。

私の頭に浮かんだ最初の安価なハックは、あなたが行ったことに近いもので、関連付けられた名前をキーとして起動したすべてのアクティビティの静的マップを維持し、その名前のおかげでアクティビティを取得することです。

于 2012-08-09T14:24:12.977 に答える