如何在Android中使用Wifi获取位置?

如何在Android中使用Wifi获取位置?,第1张

概述我希望通过Wifi获取位置并在谷歌地图中工作,这对我不起作用,但Gps没问题,也没问题. 我的代码: locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);if (locationManager != null) { boolean gpsIsEnabled = locationManager 我希望通过Wifi获取位置并在谷歌地图中工作,这对我不起作用,但Gps没问题,也没问题.

我的代码:

locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);if (locationManager != null) {    boolean gpsIsEnabled = locationManager            .isProvIDerEnabled(LocationManager.GPS_PROVIDER);    boolean networkIsEnabled = locationManager            .isProvIDerEnabled(LocationManager.NETWORK_PROVIDER);    if (gpsIsEnabled) {        locationManager.requestLocationUpdates(                LocationManager.GPS_PROVIDER,5000L,10F,(androID.location.LocationListener) this);    } else if (networkIsEnabled) {        locationManager.requestLocationUpdates(                LocationManager.NETWORK_PROVIDER,(androID.location.LocationListener) this);    } else {        // Show an error dialog that GPS is Disabled...    }} else {    // Show some generic error dialog because something must have gone    // wrong with location manager.}

AndroIDManifest:

<uses-library androID:name="com.Google.androID.maps" /><Meta-data    androID:name="com.Google.androID.maps.v2.API_KEY"    androID:value="AIzaSyB4C_zHeHYMTWqW4_Wpin-5jLF9S54KDSQ" /></application><permissionandroID:name="com.karyan.karyanmap.permission.MAPS_RECEIVE"androID:protectionLevel="signature" /><uses-permission androID:name="com.karyan.karyanmap.permission.MAPS_RECEIVE" /><uses-permission androID:name="androID.permission.ACCESS_NETWORK_STATE" /><uses-permission androID:name="androID.permission.CHANGE_NETWORK_STATE" /><uses-permission androID:name="androID.permission.ACCESS_WIFI_STATE" /><uses-permission androID:name="androID.permission.CHANGE_WIFI_STATE" /><uses-permission androID:name="androID.permission.INTERNET" /><uses-permission androID:name="androID.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission    androID:name="com.Google.androID.provIDers.gsf.permission.READ_GSERVICES" /><uses-permission androID:name="androID.permission.ACCESS_COARSE_LOCATION" /><uses-permission androID:name="androID.permission.ACCESS_FINE_LOCATION" /><uses-permission androID:name="androID.permission.ACCESS_MOCK_LOCATION" /><uses-permission androID:name="androID.permission.WRITE_EXTERNAL_STORAGE" /><uses-permission androID:name="androID.permission.CHANGE_WIFI_MulTICAST_STATE"  /><uses-feature androID:name="androID.harDWare.wifi" androID:required="true"/><uses-featureandroID:name="androID.harDWare.camera"androID:required="false" ></uses-feature><uses-featureandroID:glEsversion="0x00020000"androID:required="true" />

当wifi连接到Intenet时,Newtork_ProvIDer为null.如何解决问题

谢谢..

解决方法 比方说,我可以为GPS_PROVIDER和NETWORK_PROVIDER(或PASSIVE_PROVIDER)设置“请求位置更新”到相同的函数调用,如下所示:
// SETUP Location ManagerlocationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,this);locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,this);locationManager.requestLocationUpdates(LocationManager.PASSIVE_PROVIDER,this);

在这种情况下,我只获得GPS数据.

总结

以上是内存溢出为你收集整理的如何在Android中使用Wifi获取位置?全部内容,希望文章能够帮你解决如何在Android中使用Wifi获取位置?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1149070.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-31
下一篇 2022-05-31

发表评论

登录后才能评论

评论列表(0条)

保存