0

我在活动 A 中,这是一个带有按钮的简单 Hello world 应用程序。我在按钮 Click 上发出这个。

Intent intent =new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setUri("http://google.com");

现在将调用浏览器应用程序/进程,浏览器应用程序/进程是我旧应用程序/进程的一部分还是创建了一个新进程?

我认为这不是我过程的一部分,因为即使我没有Uses internet permission,我仍然可以访问互联网。因此,新活动作为新流程的一部分运行。

这个对吗?

4

2 回答 2

2

应用程序需要使用相同的密钥签名才能在同一进程中运行。
我猜您的应用程序没有使用与浏览器应用程序相同的密钥进行签名,因此可以肯定地说它们不在同一个进程中运行。

http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html

您还可以设置 android:process 以便不同应用程序的组件在同一个进程中运行——前提是这些应用程序共享相同的 Linux 用户 ID 并使用相同的证书进行签名。

于 2012-05-21T14:37:58.750 回答
1

在这种情况下,系统为“浏览器”进程分配内存,但浏览器Activity被添加到您的任务中,添加到您的任务的 BackStack 中,以便更正确。

于 2012-05-21T14:15:25.927 回答