問題タブ [dynamic-feature-module]
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 - 動的機能とビルド フレーバーを使用する場合のマニフェスト マージ エラー
dynamic-feature-modules を使用するとAndroidManifest.xml
、モジュールを事前にインストールする必要があるかどうかを定義できます。
か否か:
私のプロジェクトには 2 つのビルド フレーバーがあります。モジュールは 1 つのフレーバーにプリインストールする必要がありますが、他のフレーバーにはインストールしないでください。
AndroidManifest.xml
アイデアは、main
ソース セットにこのデフォルトを含めることです。
モジュールがプリインストールされている必要があるビルドフレーバーの場合、そのプロパティを次のAndroidManifest.xml
ようにオーバーライドするファイルを作成します。dist:onDemand
false
残念ながら、これは機能しません。マニフェスト マージャーは、次のエラーで失敗します。
マージ エラー: エラー: tools:replace が属性 dist:onDemand の行: 11 で指定されていますが、ショップ マニフェストに新しい値が指定されていません。行 10 エラー: 検証に失敗しました。ショップ マニフェストを終了します。
ここで何が問題なのか誰にもわかりますか?
android - 動的モジュールを開く際の NoClassDefFoundError
Android プロジェクトを作成したとしますAwesomeApp
。次に、このアプリにチャット機能を追加する必要があります。そのため、チャット用の SDK を構築する別のプロジェクトを作成しました。私のチャット SDK の出力は 4 つのaar
ファイルです。これらのaar
ファイルには、 の別のチャット SDK が含まれていますApplozic
。
aar
その後、4 つのファイルを自分のファイルに統合することに成功しAwesomeApp
、すべてが順調に進んでいます。しかし、aar
ファイルが大きすぎます。そこで、Android の新しい動的配信機能を使用することにしました。
そのために、新しいプロジェクトを作成しました。マニフェスト ファイルで、このようなアプリケーション名について言及しましたandroid:name="com.google.android.play.core.splitcompat.SplitCompatApplication"
。このプロジェクトでは、動的モジュールを作成しましたchat-module
。この動的モジュール内でアクティビティを作成し、これら 4 つのファイルDynamicActivity
を追加しました。aar
からDynamicActivity
アイコンをクリックして、(aar ファイルの) チャット機能を呼び出します。
動的モジュールを正常にダウンロードしchat-module
て開くことができます。しかし、アイコンをクリックしてチャット機能を開く/初期化すると、アプリがクラッシュしました。クラッシュレポート:DynamicActivity
chat-module
DynamicActivity
問題を解決するために私を助けてください。
android - リソースを見つけられない別のモジュールへの Android 機能モジュールの依存関係
基本モジュール (Base)、動的機能モジュール (A)、および動的機能ではなくライブラリである共通モジュール (Common) があります。Common を A の依存関係として追加すると、そこからクラスを使用できますが、Common ライブラリからリソース (エラー: シンボル R.drawable.myimage が見つかりません) が見つからないため、ビルドが失敗します。
これは動的機能の制約ですか、それとも何かが原因ですか?