1

複数のライブラリを使用する Android プロジェクトがあります。

  • 分析のための再生サービス、
  • アクション用のappcompat-v7、
  • その他... (広告、アプリ内...)

以前は APKLIB パッケージを使用していて、プロジェクトの APK を生成できましたが、Eclipse で何百ものエラーが発生しました。したがって、私の意図は、エラーがまったく発生しないようにこれを修正することです}:-)

AAR 形式とこのすべての gradle スタッフを発見しましたが、maven 構造をそのまま使用し続けたいと思います。

そこで、play_services の AAR パッケージを入手し ( https://github.com/mosabua/maven-android-sdk-deployerのおかげで)、appcompat-v7 とその他のライブラリの AAR パッケージを生成しました。

そして、まだ見つからないライブラリからのスタイルやその他の欠落しているリソースに関するいくつかのエラーを除いて、私はほとんどこれを実現しました:

Error: No resource found that matches the given name (at 'value' with value '@integer/google_play_services_version').   
Error: No resource found that matches the given name (at 'theme' with value '@style/Theme.AppCompat.Light').    

これは私の依存関係の例です:

    <dependency>
      <groupId>com.google.android.gms</groupId>
      <artifactId>play-services</artifactId>
      <version>5.0.77</version>
      <type>aar</type>
    </dependency>
    <dependency>
        <groupId>com.google.android</groupId>
        <artifactId>android</artifactId>
        <version>4.1.1.4</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>android.support</groupId>
        <artifactId>compatibility-v7-appcompat</artifactId>
        <version>20.0.0</version>
        <type>jar</type>
    </dependency>
    <dependency>
        <groupId>android.support</groupId>
        <artifactId>compatibility-v7-appcompat</artifactId>
        <version>20.0.0</version>
        <type>aar</type>
    </dependency>
    <dependency>
        <groupId>android.support</groupId>
        <artifactId>compatibility-v4</artifactId>
        <version>20.0.0</version>
    </dependency>

私の質問は次のとおりです。

  • Android アプリを使用するために Maven を忘れて Gradle に移行する価値はありますか? (いいえと言ってください:)
  • AAR パッケージを使用して依存リソースを取得することはできませんか? リソースにアクセスするために、すべてのプロジェクトを Eclipse にインポートしたくありません。
4

1 に答える 1

-4

Gradleに移行すると、修正に必要な労力が報われる可能性があります。これらの新しい Google ライブラリは、ますます Gradle 向けに作成されています。Android-Maven-Plugin は、 APKLIBが以前に機能していた方法でAARファイルをうまく処理できるほど成熟していないため、多くの小さな調整が必要になる場合があります。その場合は、代わりにこの貴重な時間を Gradle で過ごすことをお勧めします。

注: 「Gradle に移行する」ということは、必ずしも Android Studio に切り替える必要があるという意味ではありません。Eclipse の優れた IDE を引き続き使用できます ;-)

于 2014-08-08T15:37:16.847 に答える