我正在Nexus 5上测试Android 6.0,并且正在使用Metaio(我知道该服务将在12月15日结束,但是在那一天我们将转移到另一个AR平台)。
问题是,当我启动ARActivity时,出现以下错误:
09-02 08:45:11.138: E/AndroidRuntime(6141): java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/com.myapp.myapp/lib/arm/libavcodec.so: has text relocations
09-02 08:45:11.138: E/AndroidRuntime(6141): at java.lang.Runtime.loadLibrary(Runtime.java:372)
09-02 08:45:11.138: E/AndroidRuntime(6141): at java.lang.System.loadLibrary(System.java:1076)
09-02 08:45:11.138: E/AndroidRuntime(6141): at com.metaio.sdk.jni.IMetaioSDKAndroid.loadNativeLibs(IMetaioSDKAndroid.java:54)
09-02 08:45:11.138: E/AndroidRuntime(6141): at metaioCloudPlugin.SplashActivity.loadNativeLibs(SplashActivity.java:37)
09-02 08:45:11.138: E/AndroidRuntime(6141): at metaioCloudPlugin.SplashActivity.onCreate(SplashActivity.java:68)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.app.Activity.performCreate(Activity.java:6237)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.app.ActivityThread.-wrap11(ActivityThread.java)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.os.Handler.dispatchMessage(Handler.java:102)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.os.Looper.loop(Looper.java:148)
09-02 08:45:11.138: E/AndroidRuntime(6141): at android.app.ActivityThread.main(ActivityThread.java:5417)
09-02 08:45:11.138: E/AndroidRuntime(6141): at java.lang.reflect.Method.invoke(Native Method)
09-02 08:45:11.138: E/AndroidRuntime(6141): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
09-02 08:45:11.138: E/AndroidRuntime(6141): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
有谁知道一个可行的解决方案,或者至少是一种解决方法?
我正在努力寻找解决方案,但我不明白问题可能是什么。
最佳答案
今天,当我在Nexus 6(Motorola)上使用Android 6.0测试我的应用程序时,出现了相同的错误消息。我通过检查 list 文件中的targetSDKVersion解决了我的问题。使用“22”而不是“23”作为targetSDKVersion解决了它。 (见下文)
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="22" />
我还检查了build.gradle文件中的编译版本和targetSDKversion:
compileSdkVersion 22
buildToolsVersion '22.0.1'
defaultConfig {
minSdkVersion 15
targetSdkVersion 22
}
希望这会帮助你。但是,这只是暂时的解决方法,我希望我们能从metaio中获得一些反馈。
问候,
克里斯汀