【问题标题】:Why longitude and latitude cannot display on the textview?为什么经度和纬度不能显示在文本视图上?
【发布时间】:2017-11-22 14:13:38
【问题描述】:

上次我将代码放在可以成功捕获设备经度和纬度的 oncreate 方法上,但目前我再次运行它并没有显示任何内容请任何人都可以就这个问题给我建议吗? 上个月的原件应该可以找到,但目前找不到!

代码是这样的。

lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &&
            ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {

        return;
    }
    lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 5000 , 0, (LocationListener) this);

    //get Location
    Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);

    la = String.valueOf(location.getLatitude());
    searchla.setText("Latitude: "+ la);

    lo = String.valueOf(location.getLongitude());
    searchlo.setText("Longitude: "+lo);

所以我错过了什么?

【问题讨论】:

  • @LevonPetrosyan 嘿,这是我的问题,代码相同,但目前无法运行>
  • 输出控制台有错误吗?
  • @chamathabeysinghe E/Surface:getSlotFromBufferLocked:未知缓冲区:0xa2632260

标签: android location


【解决方案1】:

如果是我,我会测试看看经度和纬度是否返回值。试着放断点看看。

如果是,则为转换问题,如果不是,则为检索问题。不是答案,而是给问题一个研究方向。

【讨论】:

  • 我怀疑转换有问题,但我错了。
  • 我不太明白你想说什么?
  • 在我制作更多 cmets 之前,只是为了澄清第二张图片是您的应用程序当前显示的内容,对吧?
  • 是的。那就是问题所在。我今天之前确实成功获得了经度和纬度,但是今天有新版本然后我更新了然后这个问题突然出现了。会发生什么?
  • 我的意思是,在将它们转换为字符串之前,您需要检查您的经度和纬度是否已填充。如果它们没有被填充,你会希望在你的文本视图中至少看到经度和纬度
【解决方案2】:

如果没有其他影响文本视图可见性的代码位置,则唯一的部分是权限范围。所以设备没有权限,然后它就超出了范围。

【讨论】:

  • 但我确实在清单中添加了权限。这部分还有其他代码,包含近 400 多行
  • 你有没有尝试调试searchla.setText("Latitude: "+ la);的行?
  • 如何调试这一行?
  • 我的意思是你一步步调试的时候有没有达到线
  • 不。但它收到了一条消息。模拟器:eglMakeCurrent 失败
【解决方案3】:

也许这似乎是一个虚拟的答案,但你能检查一下模拟器上的定位服务 (GPS) 是否已激活? 在第二个屏幕截图中,我没有看到 Location On 图标。 如果不是这种情况: 自上次以来(当它工作时)你是否切换过 API 版本?是同一个模拟器/设置吗?

编辑:棉花糖模拟器问题 - https://issuetracker.google.com/issues/37069061 解决方案:更新到更新的 API 版本

【讨论】:

  • 得到这个错误无法获取位置。 E/Surface:getSlotFromBufferLocked:未知缓冲区:0xb40bef60
  • 提供答案不是我的朋友。提供解决方案已经是英雄的行为。哈哈哈
  • 您的 Android 操作系统是否运行棉花糖?这可能是一个已知的错误issueTracker
  • 尝试使用 API 24+ 创建一个新的模拟器
  • 这与获取位置无关。这是关于写入 textView 的。 stackoverflow.com/questions/33046375/…
猜你喜欢
  • 1970-01-01
  • 2021-05-15
  • 1970-01-01
  • 1970-01-01
  • 2015-09-24
  • 1970-01-01
  • 1970-01-01
  • 2023-03-29
相关资源
最近更新 更多