簡體   English   中英

由於缺少 64 位庫,無法構建 64 位版本的 Ionic Android App

[英]Can't build 64-bit version of Ionic Android App due to missing 64-bit library

我們正在嘗試更新我們的 Android 應用程序以滿足 Google 在 8 月份提出的最新 64 位要求。 我們的應用程序是使用 Ionic 創建的,我們正在使用 gradle 設置 ABI 過濾器

defaultConfig {
        multiDexEnabled true
        ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
    }

當我們嘗試使用此配置運行項目時,我們收到此錯誤:

2019-11-27 15:01:19.802 12444-12444/com.example.app D/AndroidRuntime: Shutting down VM 
2019-11-27 15:01:19.803 12444-12444/com.example.app E/AndroidRuntime: FATAL EXCEPTION: main 
    Process: com.example.app, PID: 12444 
    java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/base.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_dependencies_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_0_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_1_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_2_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_3_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_4_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_5_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_6_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_7_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_8_apk.apk", zip file "/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/lib/arm64, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/base.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_dependencies_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_0_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_1_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_2_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_3_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_4_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_5_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_6_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_7_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_8_apk.apk!/lib/arm64-v8a, /data/app/com.example.app-j3ujXrVqbu_q18iwpcdzrw==/split_lib_slice_9_apk.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]] couldn't find "libnative.so" 
        at java.lang.Runtime.loadLibrary0(Runtime.java:1011) 
        at java.lang.System.loadLibrary(System.java:1657) 
        at com.audiofetch.afaudiolib.bll.colleagues.NativeController.<clinit>(NativeController.java:471) 
        at com.audiofetch.afaudiolib.bll.colleagues.NativeController.get(NativeController.java:68) 
        at com.audiofetch.afaudiolib.bll.colleagues.AudioController.initAudioSubsystem(AudioController.java:326) 
        at com.audiofetch.afaudiolib.bll.colleagues.AudioController.initAudioSubsystem(AudioController.java:303) 
        at com.audiofetch.afaudiolib.bll.colleagues.AudioController.<init>(AudioController.java:142) 
        at com.audiofetch.afaudiolib.bll.colleagues.AudioController.get(AudioController.java:129) 
        at com.android.audiofetchapp.AudioFetch.initialize(AudioFetch.java:46) 
        at org.apache.cordova.CordovaPlugin.privateInitialize(CordovaPlugin.java:57) 
        at org.apache.cordova.PluginManager.getPlugin(PluginManager.java:171) 
        at org.apache.cordova.PluginManager.startupPlugins(PluginManager.java:97) 
        at org.apache.cordova.PluginManager.init(PluginManager.java:86) 
        at org.apache.cordova.CordovaWebViewImpl.init(CordovaWebViewImpl.java:115) 
        at org.apache.cordova.CordovaActivity.init(CordovaActivity.java:149) 
        at org.apache.cordova.CordovaActivity.loadUrl(CordovaActivity.java:224) 
        at com.example.app.MainActivity.onCreate(MainActivity.java:39) 
        at android.app.Activity.performCreate(Activity.java:7174) 
2019-11-27 15:01:19.803 12444-12444/com.example.app E/AndroidRuntime:     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1220) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2908) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696) 
        at android.os.Handler.dispatchMessage(Handler.java:105) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:6938) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374) 
2019-11-27 15:01:19.804 12444-12444/com.example.app E/ApplicationBase: =================================== 
2019-11-27 15:01:19.804 12444-12444/com.example.app E/ApplicationBase: An uncaught exception has occurred! 
2019-11-27 15:01:19.804 12444-12444/com.example.app E/ApplicationBase: ===================================

我們認為我們已經將問題追查到 libnative.so 沒有 64 位兼容版本,但我們並不確定。 該錯誤似乎僅在我們使用 ndk.abiFilters 指定 64 位 ABI 時發生。 在他們的 Ionic 應用程序中嘗試構建 64 位兼容性時,是否還有其他人遇到過這個問題?

不確定是否需要,但這是我們在應用程序中安裝的插件列表:

cordova-fabric-plugin 1.1.14-dev "cordova-fabric-plugin" 
cordova-open-native-settings 1.5.2 "Native settings" 
cordova-plugin-add-swift-support 1.7.2 "AddSwiftSupport" 
cordova-plugin-advanced-http 2.0.4 "Advanced HTTP plugin" 
cordova-plugin-audio-fetch 1.0.0 "AudioFetch" 
cordova-plugin-badge 0.8.8 "Badge" 
cordova-plugin-customurlscheme 4.3.0 "Custom URL scheme" 
cordova-plugin-device 2.0.2 "Device" 
cordova-plugin-external-app 0.0.1 "External App Plugin" 
cordova-plugin-file 6.0.1 "File" 
cordova-plugin-inappbrowser 3.1.0 "InAppBrowser" 
cordova-plugin-ionic-keyboard 2.1.3 "cordova-plugin-ionic-keyboard" 
cordova-plugin-ionic-webview 3.1.2 "cordova-plugin-ionic-webview" 
cordova-plugin-local-notification 0.9.0-beta.2 "LocalNotification" 
cordova-plugin-music-controls 2.2.0 "MusicControls" 
cordova-plugin-name 0.0.1 "Name Plugin" 
cordova-plugin-nativestorage 2.3.2 "NativeStorage" 
cordova-plugin-remote-notifications 0.0.9 "Cordova Plugin for Remote Notifications" 
cordova-plugin-splashscreen 5.0.2 "Splashscreen" 
cordova-plugin-statusbar 2.4.2 "StatusBar" 
cordova-plugin-telephony 0.0.1 "Telephony Plugin" 
cordova-plugin-tguard-login 0.0.11 "TGuard Login Plugin" 
cordova-plugin-vibration 3.1.0 "Vibration" 
cordova-plugin-volume 0.0.1 "Volume Plugin" 
cordova-plugin-walkbase 0.0.1 "Walkbase Plugin" 
cordova-plugin-whitelist 1.3.3 "Whitelist" 
cordova-plugin-zbar 1.3.2 "ZBar barcode scanner" 
cordova-universal-links-plugin 1.2.1 "Universal Links Plugin"

原來我們使用的其中一個插件里面有一個非 64 位兼容的庫。 一旦我們禁用該插件,該應用程序便開始成功構建。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM