問題タブ [aar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - プロジェクトと .aar ライブラリの間でカスタム テーマを共有することは可能ですか?
プロジェクトに特定の色のボタンを含むカスタム テーマがあり、ライブラリのボタンでこのテーマを使用したいです。出来ますか?はいの場合、どうすれば続行できますか?
android - gradle と proguard を使用して Android ライブラリをビルドすると、Java リソース ファイルが見つからない
デバッグ ビルドを実行すると、Java リソースは問題なく jar にパックされます。ただし、リリース ビルドでは機能しません。gradle タスク processReleaseJavaRes はデバッグ ビルドに対してのみ実行されることに気付きました。Android gradle コードを検索したところ、次のコード行が見つかりました。
次に、proguardRelease の依存関係としてタスクを追加しようとしました。
これはうまく機能し、Java リソースは build/intermediates/javaResources/ に作成されましたが、次の問題が発生しました。build/intermediates/classes のクラスを使用して jar をビルドし、build/intermediates/javaResources のリソースも含めるようにプロガードに指示するにはどうすればよいですか? -injars で javaResources パスを設定しようとしました。現在、それらは proguard に追加されていますが (以下のログ出力を参照)、build/intermediate/bundles/release/classes.jar の classes.jar には追加されていません。
前もって感謝します、ロマンスキー
android - Android スタジオの @aar インポートにより、間違った展開された aar ディレクトリが作成される
だから、ここにあります.aarファイルがあり、次のように依存関係として追加すると:
compile('com.foo:bar:1.0.0@aar')
次のファイルが生成されます。
build > intermediates > exploded-aar > com.foo > bar > bar-1.0.0
classes.jar、ソースなどが含まれています。
ただし、次のことを行う必要があります。
build > intermediates > exploded-aar > com.foo > bar > 1.0.0
私のaarが正しくインポートされていない理由について、誰かの手がかりはありますか?
gradle のビルド時に次のエラーが発生するため、これは問題です。
com.android.manifmerger.ManifestMerger2$MergeFailureException: java.io.FileNotFoundException: /build/intermediates/exploded-aar/com.foo/bar/1.0.0/AndroidManifest.xml (No such file or directory)
ただし、bar-1.0.0
ディレクトリにははっきりと表示されます。
編集:詳細
- 5 台のマシンでテスト済み。すべて実行中の AS 0.8.9、新規インストール、新規クローン。
- Jdk 1.6 および 1.7 がテスト済み
- --refresh-dependencies が呼び出され、変更が収集されたことを確認します
何も機能しません。
android - Android Gradle: すべてのビルド バリアントを Artifactory に公開する方法
だから私は、さまざまなビルドフレーバーで作成したこの Android ライブラリを持っています。build.gradle は次のようになります。
「artifactoryPublish」タスクで 3 つすべてのビルド aar を公開するにはどうすればよいですか?
android - Maven を使用した Google Play サービス?
私はある種の混乱しています。Android 用の Google Play Services をインストールしたいのですが、次の質問を見つけました: Maven プロジェクトで Google Play Services を使用するにはどうすればよいですか?
多くの mavenized API をインストールするためのプロジェクトを提供するhttps://github.com/mosabua/maven-android-sdk-deployer/への参照があります。そこで、最新のGoogle Play Services APIの1つを取得するためにダウンロードしてビルドしましたが、追加すると
私のプロジェクトでは、依存関係として「support-v4-19.1.0.jar」を取得します。これには、Google Play Services クラスが含まれておらず、Google Services API で提供されるレイアウト ファイルもありません。例: https://developer.android.com/google/play-services/setup.htmlを見て、ProGuard 部分を読むと、少なくとも SafeParcelable というクラスが必要ですが、これには Maven によるプロジェクトが含まれていました。このクラスが含まれる共通パッケージすらありません。ここで何が起こっているのだろうか。
プロジェクト play-services-5.0.89.aar は Maven リポジトリにあります。しかし、これをどのように使用するのですか?aarか何かなので、追加のタスクはありますか?
[更新]
わかりました
、それはEclipseの問題だけのようです.com.google.android.gms.common.GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext())はMavenによってコンパイル可能ですが、Eclipseはそれを見つけられません. これは、Google Play Services API がプロジェクト内で機能することを意味します。
[更新 2] 一方、aar は Eclipse でサポートされていないことがわかりました。しかし、Eclipse で apklib と aar (android-maven-plugin でサポートされている) を使用するには、ちょっとしたトリックを使用します。パッケージを (Maven リポジトリで) 解凍し、ライブラリとして Eclipse にインポートします。次に、ライブラリ参照をメイン プロジェクトのプロパティに追加します。Eclipse はこれらのライブラリのクラスを見つけるので、間違った Eclipse プロジェクトはなくなり (コンテンツ アシストも機能します)、android-maven-plugin を使用すると Maven でビルドすることもできます。言い換えれば、間違ったプロジェクトを持たないようにするためのコード記述のために、aar と apklib をライブラリとして Eclipse にインポートするだけで済みます。ビルド プロセスでは、Maven がすべてのビルド処理を行うため、これはすべて問題ではありません。
android - Android ライブラリの Declare-Styleable ランタイム エラー
Maven Central にいくつかのウィジェットを含むライブラリがあります。そのライブラリを依存関係として (maven central から) gradle を使用してプロジェクトに追加すると、次のようになります。
.aar を手動でダウンロードしてプロジェクトに含めると、すべて正常に動作します。R
ライブラリが含まれているかどうかを確認するために、Android Studio のコード補完を使用してみました。Maven 依存関係を使用すると、入力しcom.my.pacakge.R
ても結果は返されませんが、ローカルの .aar を使用するR
と、ライブラリの が返されます。
ライブラリコードは次のとおりです。
android - Android ロード モジュールを動的に
モジュール(Androidライブラリ)で拡張できるAndroidアプリケーションを書きたいです。モジュールは実行時にロードされます。したがって、それらは URL からダウンロードされ、ディレクトリに保存されます。モジュールは aar ファイルです。
実行時にaarファイルを動的にロードする方法はありますか?
含まれている classes.jar を URLClassLoader でロードするだけでよいことはわかっています。しかし、レイアウト、文字列、... リソースを読み込めません。HM
これを解決する方法を知っている人はいますか?
編集:
関連するトピックをいくつか見つけました。
- aar ライブラリを動的にロードする
- https://stackoverflow.com/questions/25919338/is-possible-to-include-a-dynamically-aar-file
- Android アプリのプラグインを作成
- Android アプリのプラグイン アーキテクチャ?
- アドオンを含むアプリを開発するには?
- Android - アドオンをサポートするアプリケーションを構築する
最初のリンクからの回答のため、うまくいかないようです。私はその考えが間違っていることを願っています。
android - Android ライブラリ モジュールから JAR ライブラリを作成する
Android Studio から、いくつかの Java クラス、res フォルダー (いくつかのリソースを含む)、およびいくつかのエクスポートされた要素を保持する AndroidManifest.xml ファイルを含む新しい Android モジュール (プラグインを適用: 'com.android.library') を作成しました。プロジェクトが AndroidManifest 内にマージされるようにしたい BroadcastReceiver など。このライブラリ モジュールは、AAR としてエクスポートしたり、Maven リポジトリに公開したりするとうまく機能し、他のアプリケーションは好きなように適切に使用できます。
開発環境として Eclipse を使用する Android アプリケーションでこのライブラリを利用できるようにしたいと考えていますが、まだ Eclipse を使用している人もいるようです (おそらく歴史的な理由から)。だから、私の質問は: Eclipse Android アプリケーションには AAR ライブラリをインポートする方法がありますか? そうでない場合、JAR ライブラリの作成を検討する必要がありますか? この JAR ライブラリ内に、リソースを含める必要がありますか? マニフェストファイルはどうですか?JAR 内に含めない場合、この JAR を使用するときにマニフェストを変更するようユーザーに案内する必要がありますか?
助けてくれてありがとう。