0

Webベースのアプリケーションフレームワーク(quickconnect)内にネイティブMapViewを実装しようとしています。現在、フレームワーク全体が1つのアクティビティで構成されています(フレームワークはアプリの本体を完全にWebViewで実行し、フレームワークはサウンドやネイティブシステムビューなどのネイティブ機能へのJavaScript呼び出しを解析するため、これは避けられません)。私が気付いたのは、MapViewは、MapActivity内で実行する必要があるという点で奇妙な獣であるということです。

したがって、これには2つのオプションがあります。フレームワークを実行する単一のアクティビティをMapActivityに変換し、内部のMapViewを操作するメソッドを追加します(これに関する問題は、コードをフレームワークプロジェクトに戻すことを検討していることです。システムはMapActivitiesを通常のアクティビティとは異なる方法で処理し、マップ以外のすべてのアプリが必要以上のリソースを消費するようにします)、またはWebViewを実行しているメインアクティビティの上にMapActivityをオーバーレイし、メインアクティビティがMapActivityと通信します。インテント。

アクティビティのオーバーレイはAndroidアプリの設計とは完全に矛盾していることを十分に理解していますが、それが可能かどうか疑問に思っています。ActivityGroupsを調べましたが、画面に2つのアクティビティを同時に表示するカスタムActivityGroupの例は見つかりません。重複してもかまいません。

tl; dr:Androidで重複するアクティビティを実装することは可能ですか?どうすればよいですか?

4

1 に答える 1

0

あなたの目的が実際にどのように機能するかは不明です。「重複するアクティビティ」があるとします。じゃあ何?あなたは何を得ましたか?最初のアクティビティの JavaScript コードが 2 番目のアクティビティで何でもできるわけではありません。のビジネス ロジックを 100% 実装する必要がありMapActivityますMapActivity。「クイック接続」に関係なく呼び出す方法を教える必要があるため、マップをJava でstartActivity()通常の として実装するだけで完了です。MapActivity

OTOH さんの目的が、quickconnect でサポートされている JavaScript コードで を管理することMapViewである場合、継承ではなく構成を使用するように quickconnect 全体をリファクタリングする以外に選択肢がないため、quickconnect エンジンをActivityや内で使用できますMapActivity。いずれにFragmentActivityしても、Android 互換性ライブラリでフラグメントを使用するために必要であり、クイックコネクトがフラグメントを使用してタブレットと TV のサポートを提供する必要があると考える人もいるかもしれません。

于 2011-06-03T23:20:45.307 に答える