与多模块Gradle Android共享资源

Nbe*_*nto 5 android android-studio android-gradle-plugin

我对Android Studio中的多模块项目使用gradle表示怀疑。

我需要在其他模块上访问资源R.class。请参见下一个示例:

Project
   |
   |---App
   |    |---src (Main App)
   |
   |---Core
   |    |---src (Entities App + Database) - Library aar
   |
   |---CommumUI
   |    |---src (Commum user interface) - Library aar
   |
Run Code Online (Sandbox Code Playgroud)

应用程式AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
          package="org.company.project.App">
Run Code Online (Sandbox Code Playgroud)

核心AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
          package="org.company.project.Core">
Run Code Online (Sandbox Code Playgroud)

CommumUI AndroidManifest.xml

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
          package="org.company.project.CommumUI">
Run Code Online (Sandbox Code Playgroud)

该应用程序的构建使用的是Gradle,之后它将在以下位置生成R.class:

-App.buid.generated.source.r.debug.org.company.project.App.R.class
-App.buid.generated.source.r.debug.org.company.project.CommumUI.R.class
Run Code Online (Sandbox Code Playgroud)

我尝试在App项目中获取CommumUI项目中的资源列表,但该对象将为null。

例:

//This return null
drawerLayoutList = (ListView) findViewById(R.id.drawer_menu_list);

//That again return null
drawerLayoutList = (ListView) findViewById(org.company.project.CommumUI.R.id.drawer_menu_list);
Run Code Online (Sandbox Code Playgroud)