调试版本运行完美,但每当我尝试从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都没有问题。在生成签名的APK时,它仅我的menu.xml中的ID和仅。有谁知道这个问题是什么?
答案 0 :(得分:0)
错误是由于我忘记将此行添加到.xml文件的顶部:
<?xml version="1.0" encoding="utf-8"?>
但现在跟进的问题是,为什么这不会导致本地调试版本出现问题,但在生成签名APK时会导致问题?