【问题标题】:How to On location access programmatically in android如何在android中以编程方式进行位置访问
【发布时间】:2016-08-03 06:46:52
【问题描述】:

我正在创建一个应用,但我在应用内移动设备的位置访问权限出现错误。请帮我。使用以下代码......

  public static boolean isLocationEnabled(Context context) {
    int locationMode = 0;
    String locationProviders;

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M){
        try {
            locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);

        } catch (Settings.SettingNotFoundException e) {
            e.printStackTrace();
        }

        return locationMode != Settings.Secure.LOCATION_MODE_OFF;

    }else{
        locationProviders = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
        return !TextUtils.isEmpty(locationProviders);
    }


}

我在这方面遇到了错误

"locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);"

请告诉我如何解决它。 谢谢 click here what i want

【问题讨论】:

  • 您是否获得了用户的许可?新的 os 6.0 您可能需要在运行时获得许可,请提供您的 logcat。
  • this my logcat" 引起:java.lang.NullPointerException:尝试在 com 的空对象引用上调用虚拟方法 'android.content.ContentResolver android.content.Context.getContentResolver()'。 test.MapsActivity.isLocationEnabled(MapsActivity.java:179)"
  • 似乎还不是权限问题。似乎它在抱怨您的上下文。您是否在正确的上下文中通过?你在哪里调用这个函数?在活动或片段中?
  • 在 OnCreate "isLocationEnabled(context);"像这样
  • 这就是我在活动中调用的方式。 Utils.isLocationEnabled(this);结果成功,如下图所示。

标签: java android


【解决方案1】:

我试过你的代码,我可以得到位置。然后你最好检查一下你的上下文是否正确。需要许可吗?

【讨论】:

  • 我想当我点击“允许按钮”时自动开启位置访问
  • 不,当我打开我的应用程序时,我的应用程序没有打开位置。所以当我点击“允许按钮”时,位置访问会自动打开
  • 请点击下方有问题的“点击这里我想要的”
  • 这是你想要的吗? [链接]stackoverflow.com/questions/8863509/…
  • 我不要wifi 我只想要位置权限访问
猜你喜欢
  • 2014-09-30
  • 2017-04-30
  • 2016-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-22
相关资源
最近更新 更多