当我调用UAirship.takeOff时,我收到一个UnsatfiedLinkError异常。我的应用程序使用Mono for Android,我通过JNI调用UAirship.takeOff。我想用JNI调用Urban Airship库中的其他方法,但是takeOff似乎有问题。以下是DDMS的日志信息。
07-06 11:48:01.152: DEBUG/CHRWtrucker - UALib(12833): Airship Take Off! Lib Version: 1.0.1 / App key = ********************* / secret = ********************
07-06 11:48:01.152: DEBUG/CHRWtrucker - UALib(12833): In Production? false
07-06 11:48:01.180: DEBUG/CHRWtrucker - UALib(12833): Initializing Push.
07-06 11:48:01.207: DEBUG/dalvikvm(12833): GC_FOR_MALLOC freed 9436 objects / 465360 bytes in 26ms
07-06 11:48:01.215: DEBUG/CHRWtrucker - UALib(12833): Initializing Analytics.
07-06 11:48:01.215: INFO/ActivityManager(2479): Start proc net.chrobinson.ecommerce.chrwtrucker:com.urbanairship.push.process for service net.chrobinson.ecommerce.chrwtrucker/com.urbanairship.push.PushService: pid=12850 uid=10053 gids={3003, 1015}
07-06 11:48:01.219: INFO/global(2479): Default buffer size used in BufferedInputStream constructor. It would be better to be explicit if an 8k buffer is required.
07-06 11:48:01.242: INFO/global(2479): Default buffer size used in BufferedInputStream constructor. It would be better to be explicit if an 8k buffer is required.
07-06 11:48:01.265: INFO/Zygote(12850): Zygote: pid 12850 has INTERNET permission, then set capability for CAP_NET_RAW
07-06 11:48:01.273: INFO/SplashScreenActivity(12833): onCreate
07-06 11:48:01.320: WARN/dalvikvm(12850): No implementation found for native Lmono/android/Runtime;.register (Ljava/lang/String;Ljava/lang/Class;Ljava/lang/String;)V
07-06 11:48:01.328: DEBUG/AndroidRuntime(12850): Shutting down VM
07-06 11:48:01.328: WARN/dalvikvm(12850): threadid=1: thread exiting with uncaught exception (group=0x4001d7d0)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): FATAL EXCEPTION: main
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): java.lang.UnsatisfiedLinkError: register
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at mono.android.Runtime.register(Native Method)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at chrobinson.ecommerce.chrwtrucker.CHRWtruckerApplication.onCreate(CHRWtruckerApplication.java:22)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4244)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at android.app.ActivityThread.access$3000(ActivityThread.java:125)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2071)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at android.os.Handler.dispatchMessage(Handler.java:99)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at android.os.Looper.loop(Looper.java:123)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at android.app.ActivityThread.main(ActivityThread.java:4627)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at java.lang.reflect.Method.invokeNative(Native Method)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at java.lang.reflect.Method.invoke(Method.java:521)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
07-06 11:48:01.332: ERROR/AndroidRuntime(12850): at dalvik.system.NativeStart.main(Native Method)
07-06 11:48:01.336: INFO/(2479): dumpmesg > /data/log/dumpstate_app_error.log