我们很多场景都需要获取用户的定位信息,包括使用友盟统计,其实也会根据设备的定位信息来分析用户的使用行为。
1)集成百度推送,需要打开百度开发文档,并且注册账户。
2)根据开发文档下载基础定位的SDK。
3)根据开发文档集成jar包之后,贴上基础定位的代码。
4)这里需要获取应用的AppKey,这里需要根据App的keyStore来获取签名的Mc5值,这里就会把应用包名和Appkey进行关联。
5)在app的build.gradle文件配置app打包的签名信息。
signingConfigs {
android_studio_app {
keyAlias 'easygo'
keyPassword '123@321'
storeFile file('../keystore/easygokeystore.jks')
storePassword '123@321'
}
}
buildTypes {
release {
minifyEnabled true
signingConfig signingConfigs.android_studio_app
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
minifyEnabled false
signingConfig signingConfigs.android_studio_app
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
6)然后根据开发文档添加权限。
7)运行你的集成App项目,发现获取不到定位信息,返回的数据都是null。
**
问题解决:
**
检查你的app目录下的app.gradle文件下是否添加了下面代码:
sourceSets {
main {
jniLibs.srcDirs = ['libs']
}
}
因为集成定位SDK的lib包的时候,我们添加了很多基于不同架构的so文件,我们不添加上面的代码,是无法获取到so文件的位置的。