1. 在源碼環境中編譯app時(使用mmm編譯需要根據app寫好Android.mk文件)遇到如下問題
error: Resource at colorPrimary appears in overlay but not in the base package; use <add-resource> to add.
產生這個問題的原因是在Android系統中本身是不存在colorPrimary這屬性的,所以無法直接進行使用
一個簡單的解決辦法是使用<add-resource>標簽,如下:
<resources>
<add-resource type="color" name="colorPrimary"/>
<color name="colorPrimary">#3F51B5</color>
</resources>
2. 在使用了mmm編譯出apk后,將其push到/system/priv-app/下后運行時遇到如下問題
FATAL EXCEPTION:main
Unable to instantiate application
產生這個問題的原因是在apk中缺少了dex文件。默認在apk中剔除了dex文件。只要關閉了默認
剔除便可。在app對應的Android.mk中添加如下:
LOCAL_DEX_PREOPT := nostripping 默認為true將會剔除了dex文件。nostripping不剔除
3. 在使用mmm編譯時,出現了
No resource identifier found for attribute 'roundIcon' in package 'android'
編譯的時候找不到roundIcon。簡單的解決辦法就是把這個屬性刪除了就可以。如果想要使用這個屬性,
需要到源碼環境中找到roundIcon的資源文件(可能是比較難找)。之后在app的Android.mk中添加如下
LOCAL_RESOURCE_DIR := "roundIcon對應的資源路徑"
4. 在使用mmm編譯三方app時出現(Android8.0)
ninja: error: unknown target 'MODULES-IN--path'
問題的原因暫時沒有查清楚。解決方法是將你的app源碼放入到你的android源碼中,之后執行mmm appSrc便可