【Android】バイドゥマップ使用

Baiduマップの公式ウェブサイトチュートリアル:
http //lbsyun.baidu.com/index.php?title = androidsdk / guide / create-project / attention

古いプロジェクトを開いてAndroidXに更新した後、エラーメッセージは次のようになります。

2020-10-22 13:38:57.838 15332-15332/com.ding.admin.newfieldtest E/NativeLoader: found libBaiduMapSDK_base_v5_2_0.so error
2020-10-22 13:38:57.839 15332-15332/com.ding.admin.newfieldtest E/zygote64: No implementation found for int com.baidu.mapsdkplatform.comjni.tools.JNITools.initClass(java.lang.Object, int) (tried Java_com_baidu_mapsdkplatform_comjni_tools_JNITools_initClass and Java_com_baidu_mapsdkplatform_comjni_tools_JNITools_initClass__Ljava_lang_Object_2I)
2020-10-22 13:38:57.841 15332-15332/com.ding.admin.newfieldtest E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.ding.admin.newfieldtest, PID: 15332
    java.lang.UnsatisfiedLinkError: No implementation found for int com.baidu.mapsdkplatform.comjni.tools.JNITools.initClass(java.lang.Object, int) (tried Java_com_baidu_mapsdkplatform_comjni_tools_JNITools_initClass and Java_com_baidu_mapsdkplatform_comjni_tools_JNITools_initClass__Ljava_lang_Object_2I)
        at com.baidu.mapsdkplatform.comjni.tools.JNITools.initClass(Native Method)
        at com.baidu.mapsdkplatform.comjni.tools.a.b(Unknown Source:6)
        at com.baidu.mapsdkplatform.comapi.a.<clinit>(Unknown Source:23)
        at com.baidu.mapsdkplatform.comapi.a.a(Unknown Source:0)
        at com.baidu.mapsdkplatform.comapi.c.a(Unknown Source:17)
        at com.baidu.mapapi.SDKInitializer.initialize(Unknown Source:2)
        at com.baidu.mapapi.SDKInitializer.initialize(Unknown Source:1)
        at com.ding.admin.newfieldtest.MainActivity.onCreate(MainActivity.java:178)

ソリューションリファレンス:
https //blog.csdn.net/qq_32365567/article/details/70224862?utm_medium = distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source = distribute.pc_relev-ant.none-taskブログ-BlogCommendFromMachineLearnPai2-1.add_param_isCf

特定の.soファイルのようなエラーが見つからない場合、いくつかの解決策を見つけました。参考のために書き留めてください。
1つ:.soファイルがjarパッケージと一致しません。私はあなたがこの問題を犯さないと信じています。これには全員が注意する必要があるので、ここでは説明しません。
2:Baiduによってダウンロードされたlibsファイルをプロジェクトに直接コピーします。すべての.soファイルを含むarmeabiファイルがあります。このように、特定の.soファイルが見つからないという問題はなく、エラーが報告されず、正常に実行されます。
3:これがプロジェクトのレイアウトに適さないと思われる場合、多くの人がsrc-mainにjniLibsファイルを作成してから、これらのarmeabiリソースファイルをに配置します。ただし、このように配置した後にこの種のエラーが報告された場合は、アプリのbuildGradleでsourceSets {main {jniLibs.srcDirs = ['libs']}}を削除する必要があります。もちろん、ここには依存関係{compile fileTree(include:['* .jar']、dir: 'libs')}が必要です。
4:コードを送信するときに他の誰かがjnilibsファイルを無視すると、内部の.soファイルは送信されず、更新後に.soファイルがなくなり、このエラーが報告されます。まず、プロジェクトに.soファイルが含まれているかどうかを確認します。

ここに写真の説明を挿入

ここに写真の説明を挿入

おすすめ

転載: blog.csdn.net/qq_30885821/article/details/109220653