我正在为 Android 编写一个 Java 应用程序。
在应用程序中,我使用手机上的后退按钮来取消正在运行的任务。但是,当我按下它时,在 Log Cat 中,我得到以下内容:
08-30 10:45:25.784: W/KeyCharacterMap(1661): Bad keycharmap - filesize=32
08-30 10:45:25.784: W/KeyCharacterMap(1661): Error loading keycharmap file '/system/usr/keychars/bravo-keypad.kcm.bin'. hw.keyboards.0.devname='bravo-keypad'
08-30 10:45:25.784: W/KeyCharacterMap(1661): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
取消仍然发生,但我对出现的警告感到担心。我希望应用程序尽可能稳定。有谁知道这个错误是什么意思?
通过取消 ProgressDialog 和 AsyncTask 来进行取消,如下所示:
usingDialog.setOnCancelListener(new OnCancelListener()
{
public void onCancel(DialogInterface dialog)
{
cancel(true);
}
});
最佳答案
所以我对你的问题没有完整的答案,但我在自己的应用程序中遇到了类似的问题(我收到相同的警告,但在不同的条件下),并设法弄清楚了一点。我发现的最重要的事情是,虽然它发生在我的 Motorola Defy XT 上,但它似乎没有出现在我的 Galaxy SIII 上。您使用什么类型的手机?
我发现的其他东西:
1)这似乎发生在后退按钮按下解决之前。
2) 如果我在两个 Activity 之间来回切换,则只会在我第一次连续按下后退按钮时发生这种情况。例如,如果我从 Activity A 开始,转到 Activity B,然后返回,则会出现错误。但是,如果我转到 Activity B 并再次回击,它就不会出现。更奇怪的是,如果我然后转到 Activity C,回击(错误按预期出现),然后转到 Activity B 并再次返回,则错误开始再次出现。只有在两个 Activity 之间连续几次才出现失败。
3) 该警告也会出现在其他物理按钮上(但主页除外)。我在搜索、设置和音量按钮上看到过它。但是,音量按钮附带的警告使用了与其他三个按钮不同的开发名称。
4)在我的 SIII 上,虽然我没有收到此警告,但我确实收到了另一个错误:
E/SpannableStringBuilder(6946): SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
两者似乎都源于系统使用了不正确的键盘。我希望这只是巧合,但似乎值得一提。
关于java - Android 后退按钮导致 Bad Keycharmap 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12194231/