4

現在、J2ME でアプリケーションを構築するためのフレームワークを Android に移植しています。このフレームワークは、ライブラリ (jar) にコンパイルされるいくつかのプロジェクトで構成されています。個々の JAR には、グラフィック データ (リソース、J4ME 画面など) を含めることができます。通常、すべてのプロジェクトには明確に定義されたエントリ ポイント (モジュール) があります。フレームワークを使用してアプリケーションを構築したい場合、Midlet プロジェクトを作成し、ライブラリの依存関係を追加して、インポートされたクラスを使用するだけで済みます。

Android フレームワークの開発にも同じアプローチを使用しています。この場合、jar ライブラリにコンパイルする Eclipse 内の通常の Java プロジェクトのみを使用しました。これらのプロジェクトには、Android フレームワーク (android.jar) との依存関係があります。新しいアプリケーションを構築するとき、Eclipse 内に Android プロジェクトを作成し、依存関係を追加します。

次のステップは、グラフィック情報 (Activities、Dialogs、Literals、Drawables など) を含めることができる Android 用のより高度なモジュールを構築することです。ここまでは、グラフィック関連のすべてのクラスとリソースを含む Android Eclipse プロジェクト (エンド アプリケーション) だけが必要でした。リソース (リテラル、ドローアブルなど) を使用する場合、リソースは ADT プラグイン (R.XXX) によって自動的に作成される整数ハンドラーによってのみ参照可能であるため、Android アプリケーションを作成することが唯一の方法のようです。したがって、グラフィカル モジュールの構築は、プレーンな Java jar プロジェクトを使用して構築することはできません。

Android 開発者向け情報では、モジュラー アプリケーションは実現可能であると説明されていますが、プロセスを説明する簡潔なチュートリアルは見つかりませんでしたが、アプリケーションが他のアプリケーションによって利用可能になったインテントを呼び出したときにエラーが発生しないようにする方法などのヒントがいくつかあります。これは、他のアプリケーションのリソースを使用するアプリケーションを構築する場合に有効です。システムに複数のアプリケーションをインストールする必要はありませんが、複数のコンポーネントから構築された 1 つのアプリケーションが必要です。

同様の要件で開発した経験のある人はいますか? 始めるための良いチュートリアルやヒントはありますか?

4

1 に答える 1

1

this other question の受け入れられた答えによって示唆されているように、利用可能な唯一の方法がここに記載されているようです。

ただし、このソリューションはかなり新しいものです (R6 を取得した最新の Android SDK でのみ機能し、SDK 2.0.X はサポート対象外です)。これには、Google がすでに取り組んでいることを願っているいくつかの重要な注意事項があります。

  • バイナリ ライブラリ リンクなし。これは、メイン アプリケーションがソースにアクセスする必要があることを意味します (Eclipse では、リンクされたすべてのライブラリ プロジェクトが開かれていることを意味します)。
  • リソース (レイアウト、ドローアブルなど) の名前はグローバルに扱われます。これは、2 つの「main.xml」レイアウトがある場合、最も関連性の高い (ライブラリ リストの一番上にある) レイアウトのみが使用されることを意味します。
  • 機能/バグの欠落。ドキュメントには、ライブラリ プロジェクトのエクスポートされたアクティビティは、ライブラリ プロジェクトの AndroidManifest.xml でのみ宣言する必要があると記載されています。これは現在のバージョンでは機能しません。TicTacToeサンプル内のコメントは、これが望ましい動作であることを示唆していますが、Android ツールの現在のリリースでは、ライブラリ プロジェクトから使用されるアクティビティは、メイン アプリケーション プロジェクトの AndroidManifest.xml で明示的に定義する必要があります。
于 2010-08-31T15:12:34.990 に答える