我开发了简单的Android应用,在最新版本的Android上运行正常。但谷歌播放报道称,一些使用Android 2.3.3 - 2.3.7的用户有下一个问题:
java.lang.NoClassDefFoundError: com.toolbarderv.aliexpressnavigator.SettingsActivity$GeneralPreferenceFragment
at com.toolbarderv.aliexpressnavigator.MainActivity$JsObject.getFragmentName(MainActivity.java:184)
at com.toolbarderv.aliexpressnavigator.MainActivity$JsObject.showOptions(MainActivity.java:156)
at android.webkit.WebViewCore.nativeTouchUp(Native Method)
at android.webkit.WebViewCore.nativeTouchUp(Native Method)
at android.webkit.WebViewCore.access$3300(WebViewCore.java:56)
at android.webkit.WebViewCore$EventHub$1.handleMessage(WebViewCore.java:1202)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:655)
at java.lang.Thread.run(Thread.java:1019)
当用户按“设置”菜单项并尝试打开“设置”屏幕时,会出现问题。我使用下一个代码来调用“设置”页面:
Intent i = new Intent(MainActivity.this, SettingsActivity.class);
i.putExtra(PreferenceActivity.EXTRA_SHOW_FRAGMENT, getFragmentName(fragment));
startActivityForResult(i, RESULT_SETTINGS);
我不使用Proguard。正如我所说,这种方式适用于Android的所有版本,但有些旧版本。非常感谢任何想法。
答案 0 :(得分:1)
碎片只有在Honeycomb之后才可用,如果我没弄错的话。
要在Gingerbread中使用它们,您需要Support library
答案 1 :(得分:0)
如果您正确地将库添加到项目中,请检查。选中前面的“导出”复选框。