关于百度SDK的返回错误-"PERMISSION UNFINISHED"

先说一下我的情况,我集成了百度的定位SDK,然后定位能成功,但是不稳定,有时成功有时失败。我以为是网络问题,然后我开始使用POI检索功能,结果老是不行,也不蹦,但就是啥也获取不到,说的具体一点,是根本就没回调到给他设置的回调方法里,跑断点才知道,到了PoiSearch.newInstance()这里就会跳到一个handleMessage..xxx什么的方法里,根本不会往下执行了。

后来从网上看见有的说把搜索的代码:poiSearch.searchXxx()(像searchInCity())这个方法放在点击时间里才行。我觉得可能是newInstance这个方法需要一定时间吧,但是我的环境是定位和检索Poi(其实定位的时候会返回一个Poi信息集合,但是数量有限)是一下子显示的,那要怎么过度这个时间差呢,于是我把newInstance放在了Activity的onCreate方法里,但是必须在定位操作之前,因为定位操作需要时间,所以这个时间就省出来了。

你以为万事大吉了吗?非也。你会发现还是会返回PERMISSION UNFINISHED错误信息。

后来才知道,原来问题的所在在于,申请AK的时候用到的开发版SHA1和发布版SHA1是不一样的,比如我此时的版本是没有通过签名的版本,但是我集成AK的时候用的SHA1都是签名过的,所以就会出现这个错误。下面是android studio下获取不同版本SHA1的方法:

获取发布版SHA1:

使用android studio的Terminal编写命令:keytool -list -v  -keystore (这里写上你的keystore文件路径),然后输入你的keyStore的密码就会生成了。如果你没有配置JDK的系统变量,则先需要用“cd”命令进入JDK的bin目录下才能使用keytool。

获取开发版SHA1:

同样使用android studio的Terminal编写命令,只不过现在变成了keytool -v -list -keystore (这里写上你的debug.keystore文件路径,一般在系统盘的user文件夹下的.android文件夹中)。

你会发现生成的两个SHA1并不一样,把这两个SHA1分别填入申请AK的时候的SHA1不同版本输入框中重新生成AK,把这个AK放进manifest文件中即可。

参考文章:点击打开链接

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
<uses-permission>是Android中用于声明应用程序需要使用的权限的标签。它是Android预定义的权限,用于控制应用程序对设备功能和资源的访问权限。通过在AndroidManifest.xml文件中使用<uses-permission>标签,开发者可以向系统声明应用程序需要使用的权限。\[1\] 例如,如果应用程序需要读取和写入用户提供者的权限,可以在AndroidManifest.xml文件中添加以下代码: <uses-permission android:name="com.scc.userprovider.permission.read"/> <uses-permission android:name="com.scc.userprovider.permission.write"/>\[2\] 这样,应用程序就可以在运行时访问用户提供者的读取和写入权限了。\[2\] 需要注意的是,<uses-permission>标签只能声明系统预定义的权限,如果需要声明自定义权限,需要使用<permission>标签。\[1\] #### 引用[.reference_title] - *1* [Android权限操作之uses-permission详解](https://blog.csdn.net/weixin_33946605/article/details/85920868)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [uses-permissionpermission区别及使用](https://blog.csdn.net/g984160547/article/details/119951397)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值