-1

私はいくつかのスレッドでこの質問に関するいくつかの情報を見ましたが、私の状態には合いませんでした。
私はAndroidアプリケーションを持っていますが、これをいくつかのリソースとコードをカスタマイズする必要があります。
とりあえずAndroidライブラリの使用に問題があるので、基本リソースとアセットに加えて特定のものをAndroidプロジェクトにコピーし、必要に応じてマニフェストのパッケージ名を変更するAntビルドを使用しています。私のすべてのアクティビティには一定のパスがあり、パッケージ名に相対的ではないため、問題はありません。
問題は、aaptで生成されたgenフォルダー内のRオブジェクトにあります。aaptには、androidマニフェストパッケージではなく別のパッケージを使用するパラメーターがありますが、antビルドファイルを使用する場合にのみ使用できます。ADTのパラメーターはプラグインにハードコーディングされています。

誰かがこれに対する解決策を見つけましたか?つまり、いつでもantタスクを使用してすべてのR参照(インポート)を変更できますが、エラーが発生しやすいように見えます。aaptをカスタマイズするためにWindowsでそれを行わないラッパースクリプト以外の方法はありますか?

4

1 に答える 1

-2

もう一度...私の質問に対する答えはありません、私はあなたたちが私に対して何かを得たと思い始めます。要するに、私は解決策がないことを理解しています、私ができること:

  1. すべてのインポートcom....Rを正規表現するantタスクを使用します。新しいパッケージに-欠点:正規表現の小さな問題でさえ、実行時にのみ表示されるコードで何かを台無しにする可能性があります。
  2. --custom-package my.package.nameを追加するaapt.exeまたはaaptバイナリのラッパースクリプトを使用します。これにより、マニフェストパッケージを変更しても、antとeclipseの両方で元のRファイルが保持されます。 Windows eclipseがCで適切にビルドするのに時間がかかったファイルを探すため、これはexecファイルである必要があります。linux\ macでは、これはあらゆる種類のスクリプトである可能性があるため、2つのバージョンが必要です。 SDKラッパーをもう一度インストールする必要があります。
  3. antタスクのjarコードを編集して--custom-packageを許可し、adtソースコードを編集してメニューのカスタムパラメータで有効にします-これは含まれるべき素晴らしい機能です!ただし、欠点は、コードが受け入れられ(受け入れられた場合)、SDK自体に追加されるまで、新しいSDKが出現するたびに変更をマージする必要があることです。これは、#2とは異なり、はるかに困難です。

オプション#2を選択しました。今のところ、Windows用の実行可能ファイルがあります。そこに着いたら、Linuxとmac(おそらく単純なbashスクリプト)のオプションを確認し、Pythonインストールスクリプトを作成してすべてを保存します。私のビルドプロジェクトと一緒にsvn。

皆さん、頑張ってください。

于 2012-04-16T13:15:49.373 に答える