【问题标题】:Prevent user to change GPS status Fused Location API阻止用户更改 GPS 状态 Fused Location API
【发布时间】:2015-05-16 07:25:10
【问题描述】:

我正在使用 Google API(Fuse Location Provider)来跟踪设备的位置,但我需要防止用户禁用 GPS。我阅读了很多答案,但我发现的只是:不,不能做,植根设备或漏洞利用。一位朋友刚刚向我展示了一个无需 root 设备即可完成此操作的家长控制应用程序。关于用户隐私等。该代码将仅用于公司的设备中,用户了解这一点。

至少我需要一种方法来检测 GPS 是否已被停用以通知用户,顺便说一下我在 Google API 中找不到对此的任何引用。

提前非常感谢。

【问题讨论】:

    标签: android android-fusedlocation


    【解决方案1】:

    GpsStatus.Listener - Try reading this.

    你可以重写 onGpsStatusChanged 方法:

    @Override
    abstract void onGpsStatusChanged(int event){
        if (event==GPS_EVENT_STOPPED){
    
            LocationManager mlocManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
            boolean enabled = mlocManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
            if(!enabled){
            //toggle your notification
            }
        } 
    }
    

    【讨论】:

    • 谢谢!你给我指出了正确的方向。唯一的问题是,有时我会在 GPS 无法修复时收到 'GPS_EVENT_STOPPED',即在室内,即使 GPS 仍然处于活动状态,有什么建议吗?
    猜你喜欢
    • 1970-01-01
    • 2021-05-21
    • 2016-04-09
    • 1970-01-01
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    • 2016-04-11
    • 2021-05-03
    相关资源
    最近更新 更多