应用程序可以具有任意数量的可启动活动。我知道如何通过PackageManager获取这些活动的列表。确定是否可以启动应用程序中的特定活动
有没有办法确定哪些活动可以通过startActivity启动?
例如,Documents To Go应用程序具有启动Word,Excel,Powerpoint,PDF等的不同活动......我可以启动所有这些就好了。
但是,它也包含一些我无法用startActivity启动的活动......如果我尝试这样做,我会得到一个SecurityException。
我希望能够确定哪些活动,我可以放心地启动和我不能,所以我只能用的,我可以放心地从我的应用程序内开展活动的列表呈现给用户...
这是可能?
谢谢!我会研究一下...... – Justin 2010-06-09 17:14:49
不幸的是,resolveActivity()方法仅用于隐式意图。由于我为我正在启动的活动(我通过PackageManager获取它们)提供了包和类名,因此此方法不适用于我想要执行的操作。 我没有问题找到要启动的活动。问题是,当我尝试通过startActivity()启动它时,出现SecurityException错误... 欢迎任何其他建议。 – Justin 2010-06-10 23:59:51
对于它的价值,我从SecurityException得到的确切错误是:Permission Denial:从ProcessRecord {start = 43565cb0 14660:com.magouyaware.appswipe/10043}(pid = 14660,uid = 10043)要求为空 – Justin 2010-06-11 00:10:38