我正在构建一个聊天客户端,我希望能够获取当前正在运行的活动对象(而不仅仅是他的名字)。
我需要这个以获取此活动的intent对象来检查是否有任何Extras ..
是否可以这样做?
我有这段代码:
ActivityManager mActivityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> RunningTask = mActivityManager.getRunningTasks(1);
ActivityManager.RunningTaskInfo ar = RunningTask.get(0);
return ar.topActivity.toString();
但它只给出了我的名字,我需要它的对象..
答案 0 :(得分:0)
我很确定你无法通过这种方式直接访问该对象,因为它会成为安全漏洞:你可以通过这种方式访问任何(不仅仅是你的)运行活动并与它们交互或杀死它们你的喜好。
也许您应该检查一下您的设计。
我想到的第一个便宜的黑客攻击就是保持你所启动的所有活动的静态地图,并将相关名称作为获取活动的关键,这要归功于它的名称。