Android使用百度地图出现闪退及定位时显示蓝屏问题
程序员文章站
2022-04-11 08:38:27
目录 1.Android使用百度地图出现闪退 2.Android使用百度地图定位出现蓝屏问题 1.Android使用百度地图出现闪退 一般情况下出现闪退是在AndroidManifest.xml文件中未在application标签中配置 但是,有些同学会发现,所有配置都是按照官网或者教程上的步骤来配 ......
目录
1.Android使用百度地图出现闪退
一般情况下出现闪退是在AndroidManifest.xml文件中未在application标签中配置
<meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="D9Lh8MrrLMUuXdWMU8tRLtDsta6PoaYN" />
但是,有些同学会发现,所有配置都是按照官网或者教程上的步骤来配置依旧会出现闪退问题。此时,不要盲目直接去网上搜索使用百度地图出现闪退来求解,这样不知道问题具体出现在哪,会让你耗费大量时间,然而问题依旧得不到解决。
在此时,需要学会查看AndroidStudio给出的调试日志信息。打开Android Studio底部Android Monitor来查看具体报错信息。例如:
此处本文楼主自己查看的报错信息及解决方法如下:
报错信息:
dlopen("/data/data/com.zhoupan.unlockinguser/files/libs/libBaiduMapSDK_base_v4_1_1.so", RTLD_LAZY) failed: dlopen failed: "/data/data/com.zhoupan.unlockinguser/files/libs/libBaiduMapSDK_base_v4_1_1.so" is 32-bit instead of 64-bit 11-05 14:02:48.554 17515-17515/com.zhoupan.unlockinguser E/NativeLoader: loadException java.lang.UnsatisfiedLinkError: dlopen failed: "/data/data/com.zhoupan.unlockinguser/files/libs/libBaiduMapSDK_base_v4_1_1.so" is 32-bit instead of 64-bit at java.lang.Runtime.load(Runtime.java:331) at java.lang.System.load(System.java:982) at com.baidu.platform.comapi.NativeLoader.f(Unknown Source) at com.baidu.platform.comapi.NativeLoader.b(Unknown Source) at com.baidu.platform.comapi.NativeLoader.a(Unknown Source) at com.baidu.platform.comapi.NativeLoader.c(Unknown Source) at com.baidu.platform.comapi.NativeLoader.loadCustomizeNativeLibrary(Unknown Source) at com.baidu.platform.comapi.NativeLoader.loadLibrary(Unknown Source) at com.baidu.platform.comapi.a.<clinit>(Unknown Source) at com.baidu.platform.comapi.b.a(Unknown Source) at com.baidu.mapapi.SDKInitializer.initialize(Unknown Source) at com.baidu.mapapi.SDKInitializer.initialize(Unknown Source) at com.zhoupan.unlockinguser.application.LocationApplication.onCreate(LocationApplication.java:32) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1011)
解决办法:
原因是在build文件中加载了fresco库
// compile 'com.facebook.fresco:fresco:0.9.0+'
删掉以后可以运行。
2.Android使用百度地图定位出现蓝屏问题
原因是targetVersion >= 23,那么运行到6.0及以上设备时,默认所有权限都不开启,
必须动态requestPermission,这里需要位置权限,默认没开启导致此结果。
把targetVersion 设置成22及以下就行,当targetVersion<23时,默认开启全部权限。