2017年4月12日星期三

Android 免 Root 开启位置记录功能 | Matrix 精选

Android 免 Root 开启位置记录功能 | Matrix 精选
在复杂的世界里一个就够了:ONE一个- 少数派  /  Clyde

如果你需要开启 Google 地图的时间轴、使用 Google Fit 追踪日常活动或是利用 Google Now 推送与出行相关的信息卡片,那么你需要开启 Google 的位置记录功能

Google 地图的时间轴记录了我们的行程

遗憾的是,大陆地区的用户并不能正常开启位置记录功能。所以长久以来,有相关需求的用户都只能通过市场解锁Xposed 插件LocationReportEnabler 等需要 root 权限的应用来强制开启。

除此之外,有没有一种不需要 root 就能开启位置记录功能的方法呢?


其实是有的。在升级到 Android O 且 root 无果之后,我摸索出了一种非常讨巧的办法,特来与大家分享。

让我们从上面所提到的这三款需要 root 权限的应用说起——市场解锁Xposed 插件LocationReportEnabler,尽管它们有着不同的形式,但开启位置记录功能的方法却是殊途同归:伪装运营商。不管你插入的是大陆地区哪个运营商的 SIM 卡,这些应用都会将其伪装成美区运营商,然后骗过系统、开启位置记录。

不管你插入的是大陆地区哪个运营商的 SIM 卡,这些应用都会将其伪装成美区运营商,然后骗过系统、开启位置记录。

我们不妨将这句话进行拆分。首先,经常刷机的朋友肯定都知道,刷完机之后,在不插 SIM 卡的前提下开机,部署好网络环境,是可以暂时开启位置记录功能的。但这种方法在插入 SIM 卡之后就会失效。

如果你要在主力机上开启位置记录,不插 SIM 卡这种方法显然是行不通的。转而看第二个关键词:「伪装运营商」——很遗憾,本文探讨的是如何在免 root 环境下开启位置记录,伪装运营商显然是很难通过非 root 手段做到的。


因此我们的突破点就只剩下「骗过系统」这一条了。伪装运营商是为了骗过系统中的哪一部分呢?既然是位置历史纪录,答案当然是 Google Play 服务

所以免 root 开启位置记录功能的关键就在于骗过 Google Play 服务的运营商检测

说到这里,一些经验丰富的 Android 玩家可能就已经知道怎么做了:

  • 对于那些刚刷完机拔掉 SIM 卡暂时开启了位置记录功能的用户来说,前往「应用」设置界面,点击右上角的齿轮设置按钮,打开「应用权限管理」,找到「电话」权限并禁止 Google Play 服务获取该权限即可。
  • 对于一般用户而言,也可以试着在关闭了系统的定位开关之后,清除 Google Play 服务的数据,用同样的方法禁用掉 Google Play 服务的「电话」权限后,再尝试开启位置记录功能。
利用系统自带的应用权限管理即可

当然,有得必有失。通过这个方法我们屏蔽了 Google Play 服务的 SIM 卡运营商检测,开启了位置记录功能,但一些依赖 Google Play 服务的应用可能也会因此报错。

无需理会 Google Keep 的报错信息

比如 Google Keep,在禁用了 Google Pay 服务的「电话」权限之后会弹出通知要求重新开启这个权限。但如果你不是强迫症患者,大可以清除这类通知不管,即便没有「电话」这个权限,Google Keep 和 Google Play 服务也可以正常运行。




Original Article: https://sspai.com/post/38650


I

没有评论:

发表评论