【发布时间】:2014-09-01 17:50:12
【问题描述】:
我开发了一个android 应用程序。启动应用程序后,它会显示启动画面和登录信息,它可以在 emulator 和 real device 上完美运行,但是当我按下跳过选项时设备应用程序崩溃但不在模拟器中。这是错误的logcat:
07-11 12:48:59.735: D/skia(4382): jpeg_decoder mode 1, config 6, w 640, h 1136, sample
1, bsLength 142a5!!
07-11 12:49:01.589: D/libc-netbsd(4382): getaddrinfo: autolife.com.np get result from proxy >>
07-11 12:49:02.126: D/skia(4382): jpeg_decoder mode 1, config 6, w 640, h 1136, sample 1, bsLength f1ae!!
07-11 12:49:08.694: W/dalvikvm(4382): VFY: unable to resolve virtual method 62: Landroid/app/ActionBar;.setHomeAsUpIndicator (I)V
07-11 12:49:08.868: E/AndroidRuntime(4382): FATAL EXCEPTION: main
07-11 12:49:08.868: E/AndroidRuntime(4382): java.lang.NoSuchMethodError: android.app.ActionBar.setHomeAsUpIndicator
07-11 12:49:08.868: E/AndroidRuntime(4382): at np.com.autolife.activity.BaseActivity.onCreate(BaseActivity.java:41)
07-11 12:49:08.868: E/AndroidRuntime(4382): at np.com.autolife.AutoLifeNepal.onCreate(AutoLifeNepal.java:33)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.app.Activity.performCreate(Activity.java:5122)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.app.ActivityThread.access$600(ActivityThread.java:162)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.os.Handler.dispatchMessage(Handler.java:107)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.os.Looper.loop(Looper.java:194)
07-11 12:49:08.868: E/AndroidRuntime(4382): at android.app.ActivityThread.main(ActivityThread.java:5371)
07-11 12:49:08.868: E/AndroidRuntime(4382): at java.lang.reflect.Method.invokeNative(Native Method)
07-11 12:49:08.868: E/AndroidRuntime(4382): at java.lang.reflect.Method.invoke(Method.java:525)
07-11 12:49:08.868: E/AndroidRuntime(4382): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)
07-11 12:49:08.868: E/AndroidRuntime(4382): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)
07-11 12:49:08.868: E/AndroidRuntime(4382): at dalvik.system.NativeStart.main(Native Method)
请问有人遇到过这个问题吗?请帮我找出解决方案。提前致谢。
【问题讨论】:
-
请告诉我下面的答案是否适合您的问题。
-
您的第二种方法似乎可行,但是当我按照您的程序运行应用程序时,它会出现上述相同的错误。在我的情况下,您的第一种方法无济于事。
-
对不起,但它必须工作.. 你能发布你的 BaseActivity 代码和你使用的主题吗?我认为你做错了什么。如果(在使用第二种解决方案之后)你有完全相同的堆栈跟踪,这意味着你没有删除导致错误的行(setHomeAsUpIndicator)。
-
感谢您的回复 :) 在 BaseActivity 上应用您的第一个方法后,它可以正常工作。
-
但是请告诉你你的 minSdkVersion 是什么——你使用 ActionBarCompat 吗?第一种方法可行,但正如我所提到的,它不会在低于 18 的 API 上更改此图标 - 因此图标保持不变。这意味着没有裂缝,但也没有预期的效果。您应该使用第二个选项从主题设置此图标。
标签: android debugging emulation device