为了在 Activity 上下文之外启动 Activity ,我们将使用应用程序上下文。就像 applicationContext.startActivity(new Intent(TestActivity.class ....))
如果调用startActivity的服务在另一个进程中,那么applicatioContext也属于另一个进程吗? android会为每个正在运行的进程组件创建applicationContext吗?
如果我们不指定TestActivity正在运行的进程,它是否也能够从另一个进程启动?
最佳答案
应用程序上下文不属于任何进程。但所有进程都属于应用程序。 Android 应用程序上下文是 Singleton,因此,您只有其中之一可用于所有用途。
如果您从服务或其他不是另一个 Activity 上下文的其他内容启动 Activity,则应使用 Intent.FLAG_ACTIVITY_NEW_TASK
标志。
用法如下:
Intent dialogIntent = new Intent(this, MyActivity.class);
dialogIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(dialogIntent);
关于android - 从另一个进程中的应用程序上下文启动 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45095873/