私は Eclipse を使用して 1 つのプロジェクトで 1 つの Android アプリを開発しました。これは (iPhone から) 構造化されているため、1 つの定数でデモかフル バージョンかを定義します。
デモ版を作成するたびに、定数を変更する必要があるだけでなく、別のパッケージ名でプロジェクトのコピーを作成する必要があるという問題があります。
明らかに、元のフル バージョンの変更コードをデモにコピーする必要があります。そうしないと、アプリを提出するたびにデモ アプリの作成をやり直す必要があります。
次の 3 つのアプローチが考えられます。
1. ライブラリ プロジェクトを調査しましたが、この場合にこれが実際にどのように優れたソリューションを提供するのかはまだ不明です。
たとえば、アクティビティ構造を持つフル バージョンがあるとします。
A1
A2
A3
ユーティリティ クラス U1、U2 の使用
確かに、U1 と U2 はライブラリ プロジェクトにあり、両方のプロジェクトから参照できますが、アクティビティ、strings.xml、グラフィックス、レイアウトを複製する必要があります (または、表示されない別の方法がありますか?)残念ながら、このアプローチが提案されたとき、このトピックに関する同様の質問では説明されていません。
2. 別の方法は、さまざまなビルド設定に基づいてさまざまなパッケージ名を作成することです (iPhone に似ています)。かなりエラーが発生しやすいようです) 一方で、コンパイルは Eclipse の外部で呼び出す必要があります
3. おそらく最も簡単なアプローチ (そして現在もわずかな労力で) は、プロジェクトを手動でコピーし、1 つの定数を変更し、パッケージの名前を変更し、送信するたびにコンパイル/エクスポートすることです。ただし、これはかなり「基本的」であるように見え、確かに専門的には見えません (iPhone/xCode ビルド設定/ターゲット ソリューションと比較して)
最善のアプローチは何ですか (最小限の変更が必要であり、安定していて使いやすい) ?
どうもありがとう!
編集
ティムのソリューションを試したすべての人にとって、問題なく動作しますが、カスタム属性で問題が発生しました。
これを確認してください:ビルド中にAndroidライブラリのカスタム属性とパッケージ名の再マッピングを解決する方法は? ライブラリの問題を解決します