【问题标题】:How to get Current location through google API?如何通过谷歌 API 获取当前位置?
【发布时间】:2016-08-30 05:07:00
【问题描述】:

我可以通过 Google API 获取当前位置,而无需在 19+ 的 api 级别的 android 手机中启用 GPS。

【问题讨论】:

  • 人,但我需要不启用 gps 或位置,这可能吗?
  • 为什么人们要给-ve投票,请澄清一下?
  • 如果不打开位置信息是不可能的
  • -ve 投票是因为您似乎没有付出太多努力来找到您问题的答案

标签: android google-maps google-maps-api-3 location


【解决方案1】:

如果在设备设置中禁用了位置,则表示用户不希望应用知道他的位置,操作系统应该必须确实尊重他的选择。所以没有办法,也不应该得到位置,至少从谷歌API。

但是,您可以使用互联网和 IP 地理位置来确定用户的大致位置。

例如此服务:http://ip-api.com/ 用法:调用此 URL:http://ip-api.com/json 将返回有关呼叫者 IP 的所有基本信息
打电话给这个:http://ip-api.com/json/208.80.152.201 将返回有关指定 IP 的基本信息。

【讨论】:

  • 谢谢@Vlad Matvienko。 for 给了我一些信息。
  • 是的,我曾经使用过。
【解决方案2】:

我们可以为您提供 IP 地理定位,也可以使用 Telephony Manager 下的 MNC、MCC 从这两者中获取用户的大致位置。`

 TelephonyManager tel = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String networkOperator = tel.getNetworkOperator();
String countryCode = tel.getNetworkCountryIso();
if (TextUtils.isEmpty(networkOperator) == false) {
    int mcc = Integer.parseInt(networkOperator.substring(0, 3));
    int mnc = Integer.parseInt(networkOperator.substring(3));
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-03-08
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 1970-01-01
    • 2014-02-19
    • 2017-09-27
    相关资源
    最近更新 更多