转载 android 百度地图 集成踩坑:com.baidu.android.lbs.API_KEY、No config chosen

分类:2017-11-23 20:16:09   175人阅读  评论   分享

這是个段子:

问题:在集成百度地图SDK时,地图一直无法描画

描述:今天在弄百度地图SDK,结果发现一直在报一个错误“无法在AndroidManifest.xml中获取com.baidu.android.lbs.API_KEY的值”,我纠结了很久,因为我记得我以前遇到过这个问题而且也成功过,但就是想不起来是怎么改好的了,哎~人上了岁数是真不行啊。。。接下来我们需要关注的是百度这个坑人的log,他说在在AndroidManifest.xml中获取com.baidu.android.lbs.API_KEY,那也就是说在meta-data中的key应该是com.baidu.android.lbs.API_KEY,我就在我的程序中声明了这个key,并把在百度上申请的key添了进去,然而我犯了致命的错误,就是太相信百度的log维护能力。。。原来key不叫这个名字

解决:只需要把meta-data中的key改成com.baidu.lbsapi.API_KEY即可。

调侃:当我发现这个问题的解决方式时,我恍然大悟,哦,原来我真的这么改过。。。


這是个冷笑话:

在使用百度地图开发时,使用手机没事儿,但是使用到模拟器就开始报错:java.lang.IllegalArgumentException: No config chosen

原因分析:

在后台打印的错误信息是:AndroidRuntime: FATAL EXCEPTION: GLThread 97
                                                                            java.lang.IllegalArgumentException: No config chosen
                                                                                at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:874)
                                                                                at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1024)
                                                                                at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1401)
                                                                                at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)

想必是OPENGL的问题了。

异常的原因是SDK找不到支持OPENGL的硬件,从论坛得知,用户勾选了Use Host Gup选项, 但是我使用的是Genymotion啊,从来没配置过这个东西啊,呵呵呵。

勾选Use Host Gup选项,说明模拟器使用的是物理机上的GPU。如果用户物理机没有独立显卡,就会报错,此种情况下不勾选这个选项就可以了。模拟器设置问题,与SDk无关。


解决方法:

使用最新的TextureMapView替代之前的MapView就可以了。

分享到: