我正在使用Android Studio,我有一个应用程序模块,我想将其转换为库模块。
在我的应用程序模块build.gradle
文件中,我尝试过更改
apply plugin: 'com.android.application'
到
apply plugin: 'com.android.library'
还删除了我的applicationId
代码。
这给了我gradle构建错误,我不知道如何继续。
Gradle Build Message:
Error:Execution failed for task ':app:compileDebugJava'.
> Compilation failed; see the compiler error output for details.
其中18个:
error: constant expression required
我引用R.java
中的MainActivity.java
个文件。
MainActivity.java
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_settings: //gives error
break;
case R.id.action_share: //gives error
break;
case R.id.action_about: //gives error
break;
}
return super.onOptionsItemSelected(item);
}
我一直在寻找如何将应用程序模块转换为库模块一段时间,以上应该已经解决了我的问题所以我不知道为什么我会收到这些错误。我错过了什么?
答案 0 :(得分:4)
由于ADT 14库项目中的资源常量不再是最终的。 您可以在此处找到更多信息:https://stackoverflow.com/a/7840985/759007。
您应该使用if-else语句替换switch。如果您使用的是IntelliJ / Android Studio,可以在开关上按 Alt + Enter ,然后选择将'switch'替换为'if'。