Android.mk 中的 aar 支持..apk 不包含 R.java which packageName is aar

aar support in Android.mk.. the apk contain no R.java which packageName is aar

我正在进行 android 自定义 ROM 开发。该应用程序需要一个 aar , 参考 ,我编辑 Android.mk 然后使用 'mm -B' 成功构建应用程序。

但是当运行 apk 时它强制关闭,packageName 是com.demo.android。 原因:java.lang.ClassNotFoundException: 没有找到 class "com.demo.aar.R"

"com.demo.aar" 是 aar/library 的包名。

"com.demo.android" 是应用的包名。

我在 AndroidStudio 1.5 上使用 aar,演示应用 运行 成功。

然后我比较 android-studio 和 android.mk 之间的 apk。

最后发现用Android.mk构建的apk没有'com.demo.aar.R'class,而用AndroidStudio构建的apk有。 (他们都有 'com.demo.android.R' class。)

Android.mk 的这个错误也是如此,或者我需要在 Android.mk 中进行更多配置??

解决方案是使用:LOCAL_AAPT_FLAGS += --extra-packages {aar 包名称}。您将获得两个 R 文件。他们有一些内容。一个是主包,一个是aar包。