java – Android:ActivityCompat.requestPermissions需要活动而不是上下文:/
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – Android:ActivityCompat.requestPermissions需要活动而不是上下文:/,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含990字,纯文字阅读大概需要2分钟。
内容图文
![java – Android:ActivityCompat.requestPermissions需要活动而不是上下文:/](/upload/InfoBanner/zyjiaocheng/827/73ca6efb416e404e841813269c60d8e3.jpg)
我正在调用ActivityCompat.requestPermissions以获取android M下的权限,但是,这需要参数中的活动.这很好,除了我想从单身人士调用它,单身人士可以被应用程序中的任何活动使用.
ActivityCompat.requestPermissions(context, PERMISSIONS_LOCATION, REQUEST_LOCATION);
我想避免对单例中的任何活动进行引用,因为这是内存泄漏的可靠方法,而且我更喜欢单例根本不进行活动,因为它在所有调用的活动中需要无用的代码(他们中的每一个都必须在getInstance()中包含一个额外的参数,以便单例持有一个活动 – 单例需要从某个地方获取活动.
现在,我可以在技术上获得一个活动,然后在我请求许可后将其设置为null,但是在我调用单例的每个活动中,仍然会留下大量无用的活动参数.是否有一个更优雅的解决方案,我只是没有看到这个问题?
解决方法:
requestPermissions上的文档说,如果您没有在清单中包含权限,则活动参数是您要显示弹出窗口的目标活动,为此目的,该方法要求您传递活动而不是上下文,因为完成请求权限任务后,它将结果返回给调用活动(即作为参数传递给方法的活动).如果你坚持通过你的单例实现这个,我建议你创建一个接受参数和回调中的活动的函数,因为如果给出了权限,你将需要处理回调
内容总结
以上是互联网集市为您收集整理的java – Android:ActivityCompat.requestPermissions需要活动而不是上下文:/全部内容,希望文章能够帮你解决java – Android:ActivityCompat.requestPermissions需要活动而不是上下文:/所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。