参考下面链接的答案。
Android : Call activity of another application
我尝试了firstTabSpec.setIndicator("Second Tab Name").setContent(new Intent("com.company.package.FOO"));
但我得到了
java.lang.SecurityException:从com.company.package(使用uid 10036)请求代码在进程com.example.test中运行(使用uid 10037)
com.example.test是调用已安装软件包的软件包" com.company.package.FOO"
com.company.package Manifest
<activity
android:name="com.company.package.Login"
android:label="@string/app_name"
android:windowSoftInputMode="adjustResize|stateVisible" >
<intent-filter>
<action android:name="com.company.package.FOO" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
com.example.test Manifest
<activity
android:name="com.example.test.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
如果您需要更多详细信息,请与我们联系。
谢谢:)
答案 0 :(得分:3)
出于安全原因,无法在您自己的应用中显示其他应用的活动,例如各种iframe。
然而,您可以正常启动活动并将控制传递给它。
答案 1 :(得分:2)
您可以发送意图消息以打开其他应用程序活动,但不能在标签中使用其他应用程序的活动。充其量你可以做一件事。以某种方式检测何时切换要显示其他应用程序选项卡的选项卡,并从那里发送启动该应用程序的意图。通过这样做,您将无法在选项卡中显示该应用程序的活动,但您可以像启动其他活动一样启动应用程序。为此,请执行以下任何操作
选项1:
在标签A中说你要启动其他应用程序。在选项卡A中,设置具有空白布局的活动。并且在该活动的onCreate方法中启动另一个应用程序。但这是一个问题。当其他应用程序完成时,将出现一个空白屏幕。在我解决这个问题的情况下,当其他应用程序关闭时,我只是将标签切换到主(另一个)选项卡。
选项2:
您可以使用TabHost.OnTabChangeListener侦听器检测更改标签的时间。然后你可以做同样的事情。
选项3:
或者你可以通过检测标签按钮点击来做同样的事情。
无论如何,以上所有3个选项都只是相同选项的变体。虽然这不是一个好的解决方案,但我现在看不到任何更好的解决方案。希望它能为你效劳。感谢