非活动中的Android M onRequestPermissionsResult [英] Android M onRequestPermissionsResult in non-Activity
问题描述
我有一个需要找到用户位置的应用程序,并且在各个类中提取了位置,因此我编写了一个单独的类(非活动类),使用位置服务,它在 Android M 下工作正常但在 Android M 中需要运行时权限,我想检查我的Location类中的权限,我知道如何检查它们但我不能在我的Location类中使用 onRequestPermissionsResult 方法,因为我的Location类不会从任何活动扩展。
I have an application which needs to find the user location, and location is fetched in various classes, so i have written a separate class(Not an Activity class) that fetches user location using location services, it works fine under Android M but requires run time permissions in Android M, i want to check permissions in my Location class and i know how to check them but i cannot use onRequestPermissionsResult method in my Location class, because my Location class do not extends from any activity.
那么我是什么应该做到这一点?感谢任何帮助/线索
提前致谢
So What i should do for achieving this? any help/clue is appreciated Thanks in advance
推荐答案
由于 public void onRequestPermissionsResult(int requestCode,
String permissions [],int [] grantResults)是 ActivityCompat.OnRequestPermissionsResultCallback 接口的抽象方法。
请参阅
文档
Since public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) is an abstract method of ActivityCompat.OnRequestPermissionsResultCallback interface. See the documentation
只需在所需的类中实现此接口即可。
例如
Just implement this interface in the required class and it's done. For example
class location implements ActivityCompat.OnRequestPermissionsResultCallback{ }
现在只需覆盖 onRequestPermissionsResult()
@Override
public void onRequestPermissionsResult(int requestCode,
String permissions[], int[] grantResults) {
switch (requestCode) {
// case Statements
}
}
这篇关于非活动中的Android M onRequestPermissionsResult的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!