0

我正在尝试在基于 Web 的应用程序框架(快速连接)中实现本机 MapView。现在整个框架由一个 Activity 组成(这是不可避免的,因为框架完全在 WebView 中运行应用程序的主体,并且框架将 javascript 调用解析为原生功能,例如声音和原生系统视图)。我意识到 MapView 是一个奇怪的野兽,因为它需要在 MapActivity 中运行。

所以这给我留下了两个选择,将运行框架的单个 Activity 转换为 MapActivity,添加操作内部 MapView 的方法(问题是我们希望将代码贡献回框架项目,以及系统对 MapActivities 的处理方式与正常的 Activity 不同,导致所有非地图应用程序占用了不必要的资源),或者以某种方式将 MapActivity 覆盖在运行 WebView 的主 Activity 之上,主 Activity 通过以下方式与 MapActivity 通信意图。

我完全意识到覆盖活动与 Android 应用程序的设计完全矛盾,但我想知道这是否可能。我查看了 ActivityGroups,但找不到任何同时在屏幕上显示两个活动的自定义 ActivityGroup 示例,更不用说重叠了。

tl;dr:在 Android 中是否可以实现重叠的活动,我该怎么做?

4

1 回答 1

0

目前尚不清楚您的目标将如何实际发挥作用。假设您确实有“重叠的活动”。然后呢?你有什么收获?它不像第一个活动的 JavaScript 代码可以对第二个活动做任何事情。您将不得不MapActivityMapActivity. 由于您将不得不教“快速连接”如何调用startActivity(),因此只需将您的地图实现为MapActivityJava 中的常规,并完成它。

OTOH,如果您的目标是让 quickconnect 支持的 JavaScriptMapView代码Activity管理MapActivity. 无论如何,从长远来看,这可能证明FragmentActivity是必要的,因为对于在 Android 兼容性库中使用片段是必要的,人们可能会想象快速连接应该使用片段提供平板电脑和电视支持。

于 2011-06-03T23:20:45.307 回答