为了账号安全,请及时绑定邮箱和手机立即绑定

如何找出android设备的gps是否已启用?

如何找出android设备的gps是否已启用?

慕标5832272 2019-07-10 10:02:23
如何找出android设备的gps是否已启用?在一个启用Android Cup蛋糕(1.5)的设备上,我如何检查和激活GPS?
查看完整描述

3 回答

?
慕娘9325324

TA贡献1783条经验 获得超4个赞

是的,GPS设置不能再以编程的方式改变,因为它们是隐私设置,我们必须检查它们是否是从程序中打开的,如果它们没有打开,我们必须处理它们。您可以通知用户GPS已关闭,并使用类似的东西来显示设置屏幕给用户,如果你愿意的话。

检查位置提供程序是否可用

    String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
    if(provider != null){
        Log.v(TAG, " Location providers: "+provider);
        //Start searching for location and update the location text when update available
        startFetchingLocation();
    }else{
        // Notify users and show settings if they want to enable GPS
    }

如果用户希望启用GPS,您可以这种方式显示设置屏幕。

Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);startActivityForResult(intent, REQUEST_CODE);

在onActivityResult中,您可以看到用户是否启用了它

    protected void onActivityResult(int requestCode, int resultCode, Intent data){
        if(requestCode == REQUEST_CODE && resultCode == 0){
            String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
            if(provider != null){
                Log.v(TAG, " Location providers: "+provider);
                //Start searching for location and update the location text when update available. // Do whatever you want
                startFetchingLocation();
            }else{
                //Users did not switch on the GPS
            }
        }
    }

这是一种方法,我希望它有帮助。如果我做错了什么,请告诉我。


查看完整回答
反对 回复 2019-07-10
  • 3 回答
  • 0 关注
  • 591 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信