Android.mkソースコードコンパイルはシステム共有androidに内蔵できない.uid.システム応用


紹介:
システム共有androidを構成します.uid.Systemアプリケーションは2つのステップに分けられます.
  • 1.AndroidManifest.xmlファイルでの構成:android:sharedUserId="android.uid.system"
  • 2.システムプラットフォームを使用してAndroidに署名します.mkファイルに追加:LOCAL_CERTIFICATE := platform

  • 質問:
    以上の2つのステップは私がやったことがありますが、アプリケーションはシステムアプリケーションですがandroidを共有していません.uid.システムは、多くの権限がないことを招きます.
    アンチコンパイルapkでAndroidManifestを入手できます.xml AndroidManifestを手に入れたxmlファイルの後にandroid:sharedUserId="android.uid.system"が入っていないことを発見し、Android Manifestをパッケージ化することを説明した.xmlの時に問題が発生しました.
     
    解決:
    アプリケーションには通常、複数のコードディレクトリと複数のAndroidManifestがあります.xmlファイル、これらのファイルは、最後のコンパイルパッケージに参照される必要があるときにAndroidManifestにマージされます.xmlファイルには、次の2つの導入が含まれます.
    1.これらは、依存ライブラリまたは他のディレクトリを導入したAndroidManifestファイル(ライブラリファイル)
    LOCAL_FULL_LIBS_MANIFEST_FILES := \
        $(LOCAL_PATH)/xxx/AndroidManifest.xml \
        $(LOCAL_PATH)/AndroidManifest-common.xml

    2.LOCAL_MANIFEST_FILEこれは主AndroidManifestです.xmlファイル
    LOCAL_MANIFEST_FILE := AndroidManifest.xml

    私が主AndroidManifestをxmlファイルはライブラリ導入に書き込まれ、コンパイル合併の際に書き込まれませんでした