1

私たちはプロジェクトに取り組んでおり、2 つのバージョンを作成したいと考えています。

有料サービス (SMS、電話など) のアクセス許可が必要なものと、そうでないものがあります。

1 つのプロジェクトに統合する方法を探しているので、2 つのプロジェクトの変更を追跡する必要がなく、この小さな違いのためだけに 2 つの異なるソース ファイルを用意する必要がありません。

2 セットのパーミッションを設定し、コンパイル時にどちらが必要かを決定する方法はありますか?

ありがとう!

4

3 に答える 3

0

両方のアプリに共通するすべてのコードを含むライブラリ プロジェクトを作成できます。次に、ライブラリ プロジェクトを 2 つのアプリケーション プロジェクトに含め、そこにすべてのアプリケーション固有のものを実装します。

于 2012-12-01T12:13:13.163 に答える
0

などのリポジトリにプロジェクト ファイルを保存しますgit。github.com の github アプリ、または mac アプリ ストアの sourcetree アプリは、GUI でそれを行い、どちらも無料です。コードを git に入れると、「マスター」ブランチが作成されます。git で「景品」ブランチを作成します。これにより、最初は master ブランチにすべてのソースが含まれます。freebie ブランチで必要なコードを変更してパーミッションを削除します。簡単にするために、これを 1 つのファイルの唯一の機能にします。master ブランチで開発を行い、そこでコンパイルします。github/sourcetree アプリのブランチ間を行き来します。

freebie バージョンをコンパイルする場合は、git で freebie ブランチに切り替えます。次に、git merge コマンド (github アプリに統合されている) を使用して、変更されたファイルを master から freebie にコピーします。両方のブランチで同じファイルを変更しない限り、これはワンボタンの人間が関与しない操作である必要があります。次に、通常のコンパイルを実行すると、景品アプリが得られます。git でブランチを切り替えると、git はソース ツリー内のすべてのファイルを他のブランチ内のファイルと交換するため、すべてが機能します。

私が強くお勧めする、より賢い git の使用方法については、 http://nvie.com/posts/a-successful-git-branching-model/を試すことができます。

于 2012-12-01T11:41:49.280 に答える
0

わかりましたので、いくつかの調査とグーグルの後、私に合った答えが得られました!

メイヴン!私は2つのプロファイルを持つpom.xmlファイルを作成し、必要なプロファイルをcmd行で提供できます。これらのプロファイルに従って、関連ファイル(AndroidManifest.xmlなど)を適切なフォルダーからプロジェクトのフォルダーにコピーし、コンパイルしてコンパイルします電話機に展開します。

この方法では、2 つの個別のマニフェスト ファイルを維持する必要がありますが、SVN で発生する可能性のあるマージと競合の問題に対処する必要はなく、ライブラリ コードも必要ありません。

この回答が誰かの役に立てば幸いです。ここで回答してくれた人にも感謝したいと思います! :)

于 2012-12-03T20:27:42.430 に答える