我正在验证我的位置服务与Android的兼容性,但我有点不确定我的应用程序会如何反应,因为在我的测试中,我只在应用程序运行时才授予后台许可vs时,没有什么不同。
从q迁移文档中提取这个语句
一个应用程序被认为是在后台,除非它的一个活动是可见的,或者该应用程序正在运行前台服务。
由于位置服务是前台服务,在这种情况下,权限的差异是否重要?
发布于 2019-08-21 11:46:55
您只需要运行前台服务而不是后台。否则,当前台没有活动时,您的应用程序将在后台服务启动时崩溃。
发布于 2019-08-25 13:52:03
这是个有点棘手的问题。
当在q上运行location前台服务时,您需要“同时运行”权限+在清单中声明此前台服务为location类型。您的应用程序不需要后台许可。
如果您的应用程序确实请求后台权限,用户可能会产生怀疑并拒绝任何位置权限:(因此不建议向用户询问您不需要的权限。
强烈推荐在google IO:在Android中更新您的应用程序的位置权限更改(Google /O‘19)上观看这段视频
您可以在这里阅读更多关于t的内容:文献记录
您可以在GitHub上看到googles示例项目,以便在q上使用前台服务进行位置更新:LocationUpdatesForegroundService
https://stackoverflow.com/questions/57377441
复制相似问题