【发布时间】:2011-11-10 16:00:23
【问题描述】:
我使用 NDK 在 Android 上运行大量第三方本机代码。此代码包含全局变量,因此每个进程仅支持单个会话。 (除非 Android 有某种神奇的方法可以将共享库的多个实例加载到同一个进程中。)
我必须能够同时运行多个活动。这意味着每个 Activity 必须在不同的进程中运行。有谁知道我可以这样做吗?
请注意,进程关联在这里没有帮助,这是否允许我指定单个命名进程,单个 Activity 类的所有实例都在其中运行。我想要的是让一个 Activity 类的多个实例,每个实例都在自己的进程中运行。
我在 Gingerbread(或以上);我愿意考虑任何犯规的黑客来完成这项工作......
(另外:冒着听起来暴躁的风险,请不要向我解释为什么这是一个坏主意,我应该做点别的。告诉我我的外部要求是错误的帮助我满足外部要求...)
【问题讨论】:
-
“这意味着每个 Activity 必须在不同的进程中运行”——不,这意味着它们都应该与提供对库的访问的公共组件(例如,服务)对话。 “请不要向我解释为什么这是一个坏主意,我应该做点别的事情”——强硬。即使你能做到这一点(我真诚地怀疑),你也会消耗更多的内存,而你的用户不会喜欢。
标签: android process android-activity native-activity