android - ActionBarActivity 在按下硬件菜单按钮后关闭。没有堆栈跟踪

标签 android android-actionbar-compat android-appcompat

我有一个非常奇怪的问题。当我在单击硬件菜单按钮(Android 2.3 设备)后使用 ActionBarActivity 时,应用程序意外关闭,没有任何特定错误。 Logcat 只给出:

W/KeyCharacterMap﹕ No keyboard for id 0
W/KeyCharacterMap﹕ Using default keymap: /system/usr/keychars/qwerty.kcm.bin
30-30/? I/DEBUG﹕ *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
03-19 15:54:48.612        30-30/? I/DEBUG﹕ Build fingerprint: 'generic/sdk/generic/:2.2/FRF91/43546:eng/test-keys'
03-19 15:54:48.612        30-30/? I/DEBUG﹕ pid: 785, tid: 785  >>> com.myapp <<<
03-19 15:54:48.612        30-30/? I/DEBUG﹕ signal 11 (SIGSEGV), fault addr 00000002
03-19 15:54:48.612        30-30/? I/DEBUG﹕ r0 00000000  r1 00000001  r2 00000001  r3 00000002
03-19 15:54:48.612        30-30/? I/DEBUG﹕ r4 bead28a4  r5 0000aa50  r6 001240a8  r7 0022b860
...

代码:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.main, menu);

    return false;
}

如果 main.xml 有任何元素,就会出现这个问题。

我使用 'com.android.support:appcompat-v7:19.0.+' 作为我的 gradle 依赖项。

当我使用 Activity 时一切正常。

最佳答案

也报告于 Android App crashes upon menu button click ,这似乎是最新 0.9.1 版 gradle 的问题,我可以确认它会杀死 Froyo 和 Gingerbread 上的应用程序。阅读有关类似问题的更多信息 here和另一份报告 here .该问题似乎与新的 png 有关处理器。正如 uchidev 所提到的,目前的解决方案是通过更改 build.gradle 使用 gradle 0.9.0。

备用suggestion恢复:您可以将 android.aaptOptions.useAaptPngCruncher = true 添加到 build.gradle

更新 3/28/14:此错误似乎已在 Android Studio 0.5.3 中修复。

关于android - ActionBarActivity 在按下硬件菜单按钮后关闭。没有堆栈跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22509850/

相关文章:

android - 错误 :Failed to resolve: com. twitter.sdk.android :twitter:2. 3.0 - Android Studio

android - 无法更改 ActionBar 标题文本颜色

java - 有什么方法可以下载旧版本的 appcompat 库吗?

android - 评价应用 URL - 正式版与封闭版

android - 调用 BindProcessToNetwork(network) 之后。 APP从不通过移动数据连接互联网

android - 在 Fragment 中添加内容之前必须调用 requestFeature()

Android 支持库大大增加了 APK 的大小

android - 在 Android 5.0 上的 AppCompat CardView 上以 XML 设置海拔

Android:getArguments() 总是得到空值

android - 在 Android 中的操作栏标题上设置 OnClick 监听器