请选择 进入手机版 | 继续访问电脑版

默认
发表评论 8
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复] 请教一下,如果关掉系统的一些权限,在获取用户ID的时候报错了
String id = ClientCoreSDK.getInstance().getCurrentLoginUserId()
正常的在通过以上函数获取时,是没有问题的。今天测试关掉一些权限后就获取为空了,权限是选择性关闭的,比如app里面有两个权限:Camera、Storage,我选择任意已和关掉后,活到正在运行的app界面时,这个时候获取就为空了 id ==null ,
请教一下获取这id时会受到限制吗?

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:MobileIMSDK
上一篇:[已解决] 求助MobileIMsdk java版源码中注释与字符串出现中文乱码下一篇:[已回复] 求助用MobileIMSDK开发的im登录经常断线的问题
推荐方案
评论 8
android系统是6.0的,
那就是普通的获取存储的全局变量而已,跟权限没有关系,你可以详细地了解一下Android对程序数据的生命周期管理:注意我说的是全局变量这样的数据。
引用:JackJiang 发表于 2017-11-16 17:25
那就是普通的获取存储的全局变量而已,跟权限没有关系,你可以详细地了解一下Android对程序数据的生命周期 ...

好的 ,我再看看,
引用:jay520 发表于 2017-11-16 17:28
好的 ,我再看看,

你可以把此时的 ClientCoreSDK的hashCode打印出来对比下,看看是否跟上次不为空时已经不一样了。。。
引用:JackJiang 发表于 2017-11-16 17:43
你可以把此时的 ClientCoreSDK的hashCode打印出来对比下,看看是否跟上次不为空时已经不一样了。。。

第一个是没有关闭权限前的数据,第二个是关掉权限后返回app打印出来的数据,
看了一下确实是不一样,这个有什么区分吗?
20171116.png
引用:jay520 发表于 2017-11-16 19:32
第一个是没有关闭权限前的数据,第二个是关掉权限后返回app打印出来的数据,
看了一下确实是不一样,这 ...

你的APP生命周期管理已混乱了,乱套了。你一定要好好研究下Android APP的生命周期资料,比如APP在什么时候被回收、全局变量什么时候被回收等等。

这也是为什么Android程序并不好写的原因,很诡异的
引用:JackJiang 发表于 2017-11-16 19:48
你的APP生命周期管理已混乱了,乱套了。你一定要好好研究下Android APP的生命周期资料,比如APP在什么时 ...

感谢回复,我正在研究
今天才发现这么好的网站,都是干货啊!箴言
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部