百度地图LocType=162引发的坑------>>libs和jniLibs的区别

      首先要说明libsjniLibs的区别:  这两个文件都可以用来存放so文件。

     在eclipse中,我们把so文件放入libs文件里,可以被打包到apk中,不过在AS中,放入libs文件夹中的so文件不会被打包到apk文件中,只有放入jniLibs文件中才会自动打包到apk中。


   下面开始说关于度地图的问题,因为AS项目中有libs和jniLibs两个文件夹,如下图:

所以开始按照地图API进行集成。把地图的so文件放入了jniLibs中,jar包放入了libs,又在按照地图API在AndroidManifest中加入了一下代码

注意这是重点:

sourceSets {
        main {
    		jniLibs.srcDirs = ['libs']
        }
}

然后就按照API接着定位,最后发现LocType=162,经纬度定位是4.9E-324,默认值。

开始以为是代码写错了,找了半天,最后发现是加在AndroidManifest中的代码的问题,因为jniLibs中的so文件会自动打包到apk中,不必在添加。把它去掉重新gradle后发现LocType=161,定位成功!



最后总结发现:虽然文档很靠谱,但还是有不可避免的坑啊

猜你喜欢

转载自blog.csdn.net/I52013149/article/details/77510037