Kể từ khi nâng cấp SDK Android của mình, tôi nhận được sự cố khởi động java.lang.VerifyError
sự cố trước đây của mình.Nâng cấp Android SDK gây ra sự cố java.lang.VerifyError
Nhìn vào các bản ghi, có một vài vấn đề mới dẫn đến sự sụp đổ mà không có trước đây:
Could not find method android.support.v4.content.LocalBroadcastManager.getInstance, referenced from method com.myapp.android.App.setOAuthLoginState
04-12 19:43:10.249: W/dalvikvm(9508): VFY: unable to resolve static method 251: Landroid/support/v4/content/LocalBroadcastManager;.getInstance (Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager;
04-12 19:43:10.249: D/dalvikvm(9508): VFY: replacing opcode 0x71 at 0x0014
android.support.v4.content.LocalBroadcastManager.getInstance
dường như vẫn có trong mã nguồn cho các thư viện Android năng xử lí. Cảnh báo này được ghi lại trước khi App.onCreate() của tôi được gọi là BTW.
Tôi đã thử sử dụng cả phiên bản cũ hơn android-support-v4.jar
trước đây đã hoạt động với ứng dụng của mình và phiên bản mới android-support-v4.jar
được bao gồm trong SDK mới nhất, nhưng kết quả là như nhau trong cả hai trường hợp (có vẻ thú vị đúng không?) .
Cũng lạ là dòng cảnh báo như vậy:
W/dalvikvm(12455): VFY: unable to find class referenced in signature (Ltwitter4j/User;)
Thư viện twitter4j tham chiếu ở đây dường như được đưa vào một cách chính xác trong dự án của tôi.
Tôi vẫn đang học Java, vì vậy, tôi không chắc chắn điều gì có thể gây ra sự cố này. Mọi sự trợ giúp sẽ rất được trân trọng.
FYI đầy đủ nhật ký là dưới đây:
04-12 19:43:07.585: W/ActivityThread(9508): Application com.myapp.android is waiting for the debugger on port 8100...
04-12 19:43:07.593: I/System.out(9508): Sending WAIT chunk
04-12 19:43:07.601: I/dalvikvm(9508): Debugger is active
04-12 19:43:07.796: I/System.out(9508): Debugger has connected
04-12 19:43:07.796: I/System.out(9508): waiting for debugger to settle...
04-12 19:43:10.007: I/System.out(9508): debugger has settled (1403)
04-12 19:43:10.249: I/dalvikvm(9508): Could not find method android.support.v4.content.LocalBroadcastManager.getInstance, referenced from method com.myapp.android.App.setOAuthLoginState
04-12 19:43:10.249: W/dalvikvm(9508): VFY: unable to resolve static method 251: Landroid/support/v4/content/LocalBroadcastManager;.getInstance (Landroid/content/Context;)Landroid/support/v4/content/LocalBroadcastManager;
04-12 19:43:10.249: D/dalvikvm(9508): VFY: replacing opcode 0x71 at 0x0014
04-12 19:43:10.265: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/Twitter;)
04-12 19:43:10.265: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/Twitter;)
04-12 19:43:10.272: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/User;)
04-12 19:43:10.272: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/User;)
04-12 19:43:10.272: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/User;)
04-12 19:43:10.272: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/User;)
04-12 19:43:10.272: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/User;)
04-12 19:43:10.272: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/User;)
04-12 19:43:10.272: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/Twitter;)
04-12 19:43:10.280: E/dalvikvm(9508): Could not find class 'twitter4j.conf.ConfigurationBuilder', referenced from method org.tweetalib.twitter.TwitterManager.getAndConfigureTwitterInstance
04-12 19:43:10.280: W/dalvikvm(9508): VFY: unable to resolve new-instance 528 (Ltwitter4j/conf/ConfigurationBuilder;) in Lorg/tweetalib/twitter/TwitterManager;
04-12 19:43:10.280: D/dalvikvm(9508): VFY: replacing opcode 0x22 at 0x0013
04-12 19:43:10.288: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/auth/RequestToken;)
04-12 19:43:10.288: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/auth/RequestToken;)
04-12 19:43:10.296: W/dalvikvm(9508): VFY: unable to find class referenced in signature (Ltwitter4j/Twitter;)
04-12 19:43:10.296: I/dalvikvm(9508): Could not find method twitter4j.Twitter.getAccountSettings, referenced from method org.tweetalib.twitter.TwitterManager.isAuthenticated
04-12 19:43:10.296: W/dalvikvm(9508): VFY: unable to resolve interface method 2419: Ltwitter4j/Twitter;.getAccountSettings()Ltwitter4j/AccountSettings;
04-12 19:43:10.296: D/dalvikvm(9508): VFY: replacing opcode 0x72 at 0x0008
04-12 19:43:10.296: W/dalvikvm(9508): VFY: unable to resolve exception class 519 (Ltwitter4j/TwitterException;)
04-12 19:43:10.296: W/dalvikvm(9508): VFY: unable to find exception handler at addr 0xd
04-12 19:43:10.296: W/dalvikvm(9508): VFY: rejected Lorg/tweetalib/twitter/TwitterManager;.isAuthenticated()Z
04-12 19:43:10.296: W/dalvikvm(9508): VFY: rejecting opcode 0x0d at 0x000d
04-12 19:43:10.296: W/dalvikvm(9508): VFY: rejected Lorg/tweetalib/twitter/TwitterManager;.isAuthenticated()Z
04-12 19:43:10.296: W/dalvikvm(9508): Verifier rejected class Lorg/tweetalib/twitter/TwitterManager;
04-12 19:43:10.538: D/dalvikvm(9508): threadid=1: still suspended after undo (sc=1 dc=1)
04-12 19:43:16.780: D/AndroidRuntime(9508): Shutting down VM
04-12 19:43:16.780: W/dalvikvm(9508): threadid=1: thread exiting with uncaught exception (group=0x40a5a1f8)
04-12 19:43:16.804: E/AndroidRuntime(9508): FATAL EXCEPTION: main
04-12 19:43:16.804: E/AndroidRuntime(9508): java.lang.VerifyError: org/tweetalib/twitter/TwitterManager
04-12 19:43:16.804: E/AndroidRuntime(9508): at com.myapp.android.App.onCreate(App.java:308)
04-12 19:43:16.804: E/AndroidRuntime(9508): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
04-12 19:43:16.804: E/AndroidRuntime(9508): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3925)
04-12 19:43:16.804: E/AndroidRuntime(9508): at android.app.ActivityThread.access$1300(ActivityThread.java:122)
04-12 19:43:16.804: E/AndroidRuntime(9508): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1184)
04-12 19:43:16.804: E/AndroidRuntime(9508): at android.os.Handler.dispatchMessage(Handler.java:99)
04-12 19:43:16.804: E/AndroidRuntime(9508): at android.os.Looper.loop(Looper.java:137)
04-12 19:43:16.804: E/AndroidRuntime(9508): at android.app.ActivityThread.main(ActivityThread.java:4340)
04-12 19:43:16.804: E/AndroidRuntime(9508): at java.lang.reflect.Method.invokeNative(Native Method)
04-12 19:43:16.804: E/AndroidRuntime(9508): at java.lang.reflect.Method.invoke(Method.java:511)
04-12 19:43:16.804: E/AndroidRuntime(9508): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
04-12 19:43:16.804: E/AndroidRuntime(9508): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
04-12 19:43:16.804: E/AndroidRuntime(9508): at dalvik.system.NativeStart.main(Native Method)
04-12 19:43:20.585: W/jdwp(9508): Debugger is telling the VM to exit with code=1
04-12 19:43:20.585: I/dalvikvm(9508): GC lifetime allocation: 10536 bytes
Bạn đã đặt thư viện trong thư mục/libs (lưu ý: không/lib) – 207
@ 207 - Anh hùng của tôi! Tôi tò mò lý do cho hành vi này là gì? Bạn có muốn thêm câu trả lời này làm câu trả lời để tôi có thể đánh dấu giải pháp đó là giải pháp đúng không? –
Bạn được chào đón. Vui mừng vì nó đã giúp bạn – 207