在后台运行位置监听器android 6

时间:2017-05-30 17:35:17

标签: android service locationlistener

我有一个应该有基于位置的警报的项目。 但我的问题是我使用Android 6,当我想使用位置监听器服务时,必须征得用户的许可 它需要有一个活动或背景。但是,我没有 我的第一个问题是告诉我,如何使用位置监听器服务? 第二,我想谈谈许可问题。 我有牵引活动,首先是发射器,用户可以在此活动中添加报警,第二个活动有谷歌地图,用户可以添加标记,以便在用户保存报警时保存报警并且不关闭应用程序没有问题 当显示标记位置警报附近的用户时,但当用户关闭应用程序时,位置监听器无法正常工作

第二个活动 enter image description here

第一个活动 enter image description here

1 个答案:

答案 0 :(得分:0)

最简单的方法是从您拥有的任何活动中请求权限。然后从服务中,您可以检查是否有它们。目前无法从后台请求权限。

你可以尝试什么(我还没有) - 请求权限的代码只是这样做:

    Intent intent = getPackageManager().buildRequestPermissionsIntent(permissions);
    startActivityForResult(REQUEST_PERMISSIONS_WHO_PREFIX, intent, requestCode, null);

buildRequestPermissionsIntent不公开。但您可以尝试使用反射调用它,或者重新定义PackageManager类以使其具有可见访问权。