Android-パッケージAAR手順と最も重要な注意事項!

2479 ワード

概要
最近、プロジェクトの要求で、開発したモジュールをaarにパッケージ化し、他のプロジェクトの呼び出しに供する必要があります.しばらくしてから、ここに注意すべき点がたくさんあることに気づきました.だから、記録して、回り道をしないでください.
まずaarパッケージとは何ですか?
JArとaarの簡単な違い:
  • *.JAr:classファイルとリストファイルのみが含まれており、ピクチャなどのすべてのres内のファイルなどのリソースファイルは含まれていません.
  • *.aar:すべてのリソース、classおよびresリソースファイルを含む
  • 新しいエンジニアリング(依存なし)でAARをパッケージ化するには
    1.新しいLibrary
    そしてnext+finishで新規作成に成功しました
    パッケージするファイルをフォルダの場所に従ってModuleに入れ、build->Make Moudle appを直接クリックしてパッケージに成功すると、対応するパスの下でaarが生成されます.
    もちろん、これらは私たちが必要としないはずです.開発プロジェクトには必ず依存しているからです.しかも空のプロジェクトではないに違いない.
    成形されたプロジェクト(依存)はAARを迅速にパッケージ化する方法
    プロジェクトに新しいModuleを直接コピーしてから、プロジェクトをModuleにコピーしたり、現在のプロジェクトを再コピーしたりして、コピーしたプロジェクトで直接AARに変更することができます.
    2つ目は、コピー項目を直接AARに変更することです.私たちは以下の変更が必要です.1.appの下のbulid gradleファイルを修正する:apply plugin:'com.android.Application'をapply plugin:'comに変更します.android.library'
    2.注記defaultConfigでのアプリケーションID
    3.AndroidManifest.xmlファイル、アプリケーションの変更
    そしてコメント調が最初に起動したActivityが起動したaction
               
                    
    
                    
                

    4.もしあなたが自分でApplicationをカスタマイズしたら、取り除く必要があります.AARにはApplicationがないので、問題が来ました.私たちはもともとApplicationの初期化コードをどうしますか.これは簡単で、私たちは単独でOptionsクラスを書いて、呼び出し者に提供して、彼にアプリケーションに伝えて、このクラスの中でいくつかの初期化操作をすることができます.
    呼び出し者は彼のアプリケーションにアプリケーションを転送します.
    そして直接build->Make Moudle appでaarを生成できます!
    注意事項
    1.主プロジェクトはAARに依存するリモートライブラリに依存する必要があります.そうしないとClassNotFound異常が発生します.ここでは依存ライブラリのバージョンが競合する可能性があります.これは調整する必要があります.
    2.リソースネーミングは、ピクチャリソース、string、color、dimens、layoutなど、すべてのプロジェクト名の接頭辞を付けることが望ましい.どうせresディレクトリの下のすべてのファイルは、ホストappの下のリソースと重複することを防止するために、統一された接頭辞を使用することが望ましい.aarリファレンスはソースコードリファレンスと同じ効果を発揮するため、すべてのリソース重複リファレンスの問題が発生しやすいため、接頭辞を付ける必要がある.
    3.aarパッケージに微信支払い、共有などのサードパーティライブラリがある場合は、メインエンジニアリングで使用する必要があります.gradleにアプリケーションIdを置き換えるか、メインエンジニアリングのパッケージ名とkeyでサードパーティ操作のkeyとidを取得して共有することを例にとると、リストファイルの共有KEYがメインプロジェクトのbuild gradleファイルの共有KEYと異なる場合は、リストファイルが異常になります.
    4.butterknifeは8.4.0以上のバージョンを統一する必要があります.そうしないと、エラーが発生します.私の提案によれば、使わないほうがいいです.そうしないと、あなたの気持ちがいいですよ.5.aarのMyApplictionでクラスのマネージャを使用している場合は、aarにパッケージ化する際にコードを抽出して独立したクラスマネージャにする必要があります.aarにパッケージ化した後、アプリケーションに関連するすべてのものが交換され、空指針異常が発生しないようにすることを覚えておいてください.6.AARモジュール用butterknifeは、リソースRをR 2(一括置換)7に変更する必要がある.レイアウトファイルの名前を変更しないでください.そうしないと、Idの例外が見つかりません.
    今日はここまで分析して、次は新しい内容を続けます!