Articles of gps

如何获取GPS原始数据(卫星伪距)?

如何读取GPS原始数据,更具体地说我需要saellites伪范围。 此数据不以NMEA格式提供。

在谷歌地图android中移动带有gps的标记

我想在GOOGLE MAP移动标记,而gps位置更改就像在UBER应用中一样。 我find了一些解决方案但无法解决我的问题。 解决方案是1和2 下面是我的onLocationChange()方法 public void onLocationChanged(Location location) { double lattitude = location.getLatitude(); double longitude = location.getLongitude(); mLastLocation = location; if (mCurrLocationMarker != null) { mCurrLocationMarker.remove(); } //Place current location marker LatLng latLng = new LatLng(lattitude, longitude); MarkerOptions markerOptions = new MarkerOptions(); markerOptions.position(latLng); markerOptions.title(“I am here”); markerOptions.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED)); mCurrLocationMarker = mGoogleMap.addMarker(markerOptions); tv_loc.append(“Lattitude: ” + lattitude […]

ACCESS_FINE_LOCATION AndroidManifest权限未被授予

我试图在Android(2.2和2.3)中使用GPS,但是当我尝试使用LocationManager对象时出现以下错误: WARN/System.err(522): java.lang.SecurityException: Provider network requires ACCESS_FINE_LOCATION or ACCESS_COARSE_LOCATION permission 我在其他post中研究了这个问题,它们通常是由于AndroidManifest.xml的问题。 然而,我的似乎很好: 以下是GetLocation Activity中我的onCreate方法中令人讨厌的代码行,包含在try / catch块中: LocationManager locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); final LocationListener locListener = new MyLocListener(); try{ locManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locListener); } catch (SecurityException se){ ((TextView)findViewById(R.id.infobox)).setText(se.toString()); se.printStackTrace(); } 这是我写的第一个应用程序,我需要请求Android权限,并且迄今为止未被授予任何权限。 在我的清单中或者在我的eclipse配置中是否有我遗漏的东西?

ACCESS_COARSE_LOCATION权限在Android上提供单元格塔精度

我正在使用FusedLocationApi的requestLocationUpdates()函数进行一些测试。 我正在使用PRIORITY_BALANCED_POWER_ACCURACY 。 城市街区精度对我来说很好。 当我请求ACCESS_FINE_LOCATION权限时,我获得了100米的精度,这对于关闭GPS非常有用 。 由于我不需要GPS精度但是城市块精度,我想只请求ACCESS_COARSE_LOCATION权限。 但是,当我请求ACCESS_COARSE_LOCATION权限时,我获得了2公里的精度。 似乎该设备不再使用Wifi权限,只有单元塔精度。 如何使用ACCESS_COARSE_LOCATION权限获得更好的精度? 注意:我的测试设备禁用了GPS 。

哪里可以保存Android GPS(纬度,经度)积分?

在onLocationChanged事件中,我想保存我的GPS路线(纬度,经度)。 后来我想加载这些数据并绘制路线。 通过使用某种数组types(并使用数据库保存或加载)或XML文件或其他内容,谁是最好的方法? 谢谢。

Android:当用户输入特定位置时获取通知

我正在开发android应用程序,当用户进入特定位置时会发出通知 用户可以使用纬度经度(即谷歌地图)指定位置 我知道如何获得纬度和经度但我的问题是,当用户输入特定位置时,它将与之前指定的纬度和经度不完全匹配。 如图所示,当用户进入区域(约20米)时,用户指定名为“我的位置”的位置,然后应用程序应向用户发送通知。 我想知道如何比较用户指定的纬度和经度(我的地方)和GPS应用程序获取的当前纬度和经度。 如果用户在20米的范围内靠近我的地方,那么这样做的比较是正确的。 (这20米是近似的。)我可以设置Android的精度,例如20米。 谢谢。

处理多个地理围栏过渡与公共区域

如果我有这两个地理围栏,在注册这些地理围栏后,当我进入或离开这些圈子的圆周时,我会得到通知。 但是,如果我正在通过公共区域,即从一个圆圈到另一个圆圈,我不希望我的应用程序发送通知。 可能吗? 如果是这样,那怎么样?

onLocationChanged()从未调用过

我正在编写一个带来当前位置的代码,但它没有给我这个位置,因为它从不调用onLocationChanged() 。是否有任何方法可以find该位置。 对于这种情况,mobileLocation将为0,因此执行将转到else块。 我的代码是 public class FindLocation { private LocationManager locManager; private LocationListener locListener; private Location mobileLocation; private String provider; public FindLocation(Context ctx){ locManager = (LocationManager) ctx.getSystemService(Context.LOCATION_SERVICE); locListener = new LocationListener() { @Override public void onStatusChanged(String provider, int status, Bundle extras) { } @Override public void onProviderEnabled(String provider) { } @Override public void onProviderDisabled(String provider) […]

Android LocationManager.getLastKnownLocation()返回null

所以我试图在应用程序中只对一次gps坐标进行采样。 我不想创建一个LocationListener对象来不断获取gps更新。 我想等到收到坐标,然后继续进行另一项任务。 这是一段代码片段 LocationManager lm = (LocationManager)act.getSystemService(Context.LOCATION_SERVICE); Criteria crit = new Criteria(); crit.setAccuracy(Criteria.ACCURACY_FINE); String provider = lm.getBestProvider(crit, true); Location loc = lm.getLastKnownLocation(provider); locvariables在模拟器中始终为null。 我尝试使用命令“geo fix latitude longitude”来设置它,我也尝试使用DDMS设置它。 这两种方法都没有对代码产生任何影响。 该片段也没有引起任何exception。 谢谢你的帮助。

如何在Android上的exif数据中保存GPS坐标?

我正在为我的JPEG图像写GPS坐标,并且坐标是正确的(正如我的logcat输出所示),但似乎它以某种方式被破坏了。 读取exif数据会产生空值,或者对于我的GPS: 512.976698 degrees, 512.976698 degrees 。 任何人都可以解释这个问题吗? 写它: try { ExifInterface exif = new ExifInterface(filename); exif.setAttribute(ExifInterface.TAG_GPS_LATITUDE, latitude); exif.setAttribute(ExifInterface.TAG_GPS_LONGITUDE, longitude); exif.saveAttributes(); Log.e(“LATITUDE: “, latitude); Log.e(“LONGITUDE: “, longitude); } catch (IOException e) { e.printStackTrace(); } 并阅读它: try { ExifInterface exif = new ExifInterface(“/sdcard/globetrotter/mytags/”+ TAGS[position]); Log.e(“LATITUDE EXTRACTED”, exif.getAttribute(ExifInterface.TAG_GPS_LATITUDE)); Log.e(“LONGITUDE EXTRACTED”, exif.getAttribute(ExifInterface.TAG_GPS_LONGITUDE)); } catch (IOException e) { e.printStackTrace(); […]