调试版本可以完美运行,但是每当我尝试从AndroidStudio生成签名的APK时,它都找不到菜单项的R.id。
这是我的menu.xml文件
<item
android:id="@+id/actionsearch"
android:title="Search"
app:showAsAction="always"
app:actionViewClass="android.support.v7.widget.SearchView"/>
<item
android:id="@+id/actionlogin"
android:icon="@drawable/ic_lock_outline_black_24dp"
android:title="Login"
app:showAsAction="always"/>
<item
android:id="@+id/actionadddeal"
android:title="Add Deal"
android:icon="@drawable/ic_add_circle_black_24dp"
app:showAsAction="always" />
<item
android:id="@+id/actioneditvenue"
android:title="Edit Venue"
android:icon="@drawable/ic_edit_black_24dp"
app:showAsAction="always" />
这是为一个示例文件进行发布构建时gradle的输出:
path\to\VenueDetailPagerActivity.java
Error:(109, 53) error: cannot find symbol variable actionlogin
Error:(109, 84) error: cannot find symbol variable actioneditvenue
Error:(109, 106) error: cannot find symbol variable actionadddeal
Error:(109, 167) error: cannot find symbol variable actionlogin
Error:(263, 22) error: cannot find symbol variable actioneditvenue
Error:(272, 22) error: cannot find symbol variable actionadddeal
奇怪的是,所有其他资源ID都没有问题。这只是我的menu.xml中的ID,并且仅在生成签名的APK时使用。有谁知道这个问题可能是什么?
最佳答案
该错误是由于我忘记将此行添加到.xml文件顶部而导致的:
<?xml version="1.0" encoding="utf-8"?>
但是,现在的跟进问题是,为什么这不会在本地调试版本中引起问题,而是在生成签名的APK时引起问题?
关于android - Android应用程序构建调试成功,但在进行发布构建时找不到菜单项的R.id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42655859/