您只是无法从父模块访问子模块的类或值。
当我第一次将项目转换为模块以便将其作为即时应用程序运行时,我遇到了同样的问题。我成功应用来克服它的解决方案是在父模块的类中创建 set 方法,这些方法使用子模块中的值,并从子模块的类中调用它们。
例子:
在父模块中,您有
class ParentModuleClass {
private String defaultWebClientID = null;
public void setDefaultWebClientID (String defaultWebClientID) {
this.defaultWebClientID = defaultWebClientID;
}
private yourMethod () {
...
if (defaultWebClientID != null) {
//use defaultWebClientID
}
...
}
}
在子模块中你有这个构造函数
import com.app.parent.ParentModuleClass;
import com.app.child.R;
class ChildModuleClass {
public ChildModuleClass (ParentModuleClass parentClassObj) {
parentClassObj.setDefaultWebClientID(R.string.default_web_client_id);
}
}