java - Android M onRequestPermissionsResult 在非 Activity

标签 java android android-6.0-marshmallow

我有一个需要查找用户位置的应用程序,并且位置是在各种类中获取的,所以我编写了一个单独的类(不是 Activity 类),它使用 获取用户位置>位置服务,它在 Android M 下可以正常工作,但在 Android M 中需要运行时权限,我想在我的 Location 类中检查权限,我知道如何检查它们,但我不能在我的 Location 类中使用 onRequestPermissionsResult 方法,因为我的 Location 类没有从任何 Activity 扩展。

那么我应该怎么做才能实现这一目标?任何帮助/线索表示赞赏 提前致谢

最佳答案

由于 public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults)ActivityCompat.OnRequestPermissionsResultCallback 接口(interface)的抽象方法。 看 the documentation

只需在所需的类中实现此接口(interface)即可。 例如

class location implements  ActivityCompat.OnRequestPermissionsResultCallback{ }

现在只需覆盖 onRequestPermissionsResult()

 @Override
public void onRequestPermissionsResult(int requestCode,
                                       String permissions[], int[] grantResults) {
    switch (requestCode) {
     // case Statements
    }
}

关于java - Android M onRequestPermissionsResult 在非 Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38480671/

相关文章:

android - 如何以手机音量而非扬声器音量播放音频文件

java - 用于存储键/值对的在线服务?

java - 即使将交互模式设置为 True,Z3 也会失败

java - 查找/迭代 Android CustomListView,以查找选定的复选框

java - Android - 单例类仅在第二次刷新时更新

java - 将 AndroidKeyStoreRSAPrivateKey 转换为 RSAPrivateKey 时崩溃

android - 无法将 ADB 连接到 Android Marshmallow (6.0.1)

java - 如何使用 Saxon java 库命令行工具执行 schematron 验证?

java - 使用 Spring MVC 在模型中添加多个属性会导致性能问题吗?

android - 棉花糖存储和图库使用的读写权限