网络lp地址定位lp是什么意思思?

lp地址是什么意思_百度知道IP地址数字是什么意思啊?_百度知道Wi-Fi 定位是怎么实现的?哪里有 IP 或者 MAC 和坐标的对应关系?
找到国外有几家公司貌似有这种数据,但是似乎都不支持中国的很多城市。请教各位大牛了^_^顺便一问,如果是手机虚拟出来的热点,比如使用ipad连接起来,ipad能进行正常的定位吗?
苹果貌似用的是这家公司提供的WIFI定位服务这个网站可以通过MAC地址取得位置信息
举个例子一般的客户端定位时 会收集 基站信息 周围wifi 等传到服务器包含 基站编号 信号强度 等,一般是3个基站周围 wifi热点的 mac值,强度等,可以发多个MAC,程序自定,一般也是信号强的几个发送到服务器,进行数据比对处理,根据已知的基站GPS坐标,根据信号强度 三角定位,已知WIFI热点 MAC值的GPS位置等进行定位即:知道了WIFI热点的设备MAC值,可以查库看到GPS位置定位精度:WIFI定位 & 基站定位 & IP定位
回答补充问题,用手机虚拟出来的热点不能用于定位
没错,就是 Skyhook 提供的 Wi-Fi 定位服务。如果你的 iPod touch 通过家里的路由器,无法定位,说明你的路由器还不在 Skyhook 的数据中,你可以手动给你的路由器提交定位信息,我以前就是这样设置的。需要先查到自己路由器的 MAC 地址,提交地址:
嗯,一般来讲地图导航厂商会有这样的数据,我们称之为MPS混合定位技术,结合了基站和WIFI以及GPS的定位技术,我这有资料,有兴趣的可以私我!
这个主要看基础数据,wifi定位其实非常的简单。GPS和wifi的接入点地址是绑定的,当手机接入wifi后或者搜索到wifi的地址后,就可以定位到绑定的gps位置。
1、原来google有google街车,可以手机ap和wifi站点信息。2、手机上wifi如果gps有开,google可以收集wifi ap信息 3、手机cell id与ap信息收集,chunic说的不太全
touch+联通2g网络手机热点确实可以定位,亲测百度地图3公里开始有少量偏移,之前一直很准确。
驴博士API支持150个城市的基站、wifi定位~
如果事先知道AP的位置坐标,就可以通过简单算法获得其覆盖区域的WiFi终端位置。但此法实用性差,因为很难事先获得AP的准确坐标。国外有公司通过自己部署大量AP来做这事,也就是先干无线宽带接入的买卖,顺带干上LBS。较常见的是通过实现采集IP(DHCP服务器)、MAC地址和位置坐标的绑定关系,做成定位数据库,然后根据终端获取的IP和检测到的AP MAC反向推算位置。如果是手机虚拟出来的热点,若干其它终端连接这个热点,从技术上看只要知道其中一个的坐标,比如通过GPS,可据此推算出其它终端的位置。
已有帐号?
无法登录?
社交帐号登录IP 地理位置查询 - 查询 IP 地址资料,在地图上定位 IP 地址的地理位置
小知识: IP 地址
IP 地址(英语:Internet Protocol Address)是一种在Internet上的给主机编址的方式,也称为网际协议地址。常见的IP地址,分为IPv4与IPv6两大类。
Internet 上的每台主机都有一个唯一的IP地址。IP协议就是使用这个地址在主机之间传递信息,这是Internet 能够运行的基础。IPv4 地址的长度为32位,分为4段,每段8位,用十进制数字表示,每段数字范围为0~255,段与段之间用句点隔开。例如 234.56.31.1。目前IP技术可能使用的IP地址最多可有约42亿个(232)。有关 IPv4 的更多信息,可参阅维基百科词条 。
随着网络的飞速发展,IP资源越来越紧缺,所以科研组织开始研究 IPv6。从IPv4到IPv6最显著的变化就是网络地址的长度。最大可达 2128, 约为 3.403 x 1038。有关 IPv6 的更多信息,可参阅维基百科词条 。
分配IP的机构
所有的IP地址都由国际组织 NIC(Network Information Center)负责统一分配,目前全球共有三个这样的网络信息中心:
InterNIC:负责美国及其他地区
ENIC:负责欧洲地区
APNIC:负责亚太地区
如何查询本机的 IP 地址
在 Windows 操作系统下,可以点击开始菜单,点运行,然后输入 cmd 回车,进入 Dos 窗口,输入命令 ipconfig /all 即可。
如何查询已知域名的 IP 地址
第一个方法就是在 Dos 状态下, 输入 ping 域名地址 命令。例如,要查询本站的 IP 地址,可输入 ping
第二个更简单的方法就是访问 网站,输入对应的域名地址,即可显示此域名对应的 IP,并显示此主机在地图上的位置,非常方便。第三方API接口(2)
百度开放平台:
1.显示基础地图:SDKInitializer.initialize(getApplicationContext()); //初始化
/**mMapView=(MapView)findViewById(R.id.bmapView);//百度地图 fragment使用com.baidu.mapapi.map.TextureMapView
*mMapView.showZoomControls(false);//隐藏缩放按钮
mMapView.showScaleControl(false);//隐藏比例尺
*mBaiduMap = mMapView.getMap();
private void initMap(BaiduMap mBaiduMap,List&Data& mLatLng) {
if(mBaiduMap==null||mLatLng==null){
//在地图上添加Marker,并显示
ArrayList&OverlayOptions&alOverlay=new ArrayList&OverlayOptions&();
ArrayList&LatLng&alLatLng=new ArrayList&LatLng&();
LatLng scaleLatLng=
for(int i=0;i&mLatLng.size();i++){
double[] gcj2bd = gcj2bd(mLatLng.get(i).latitude, mLatLng.get(i).longitude);//是否需要地理编码转经纬度
//定义Maker坐标点
LatLng pointLatLng = new LatLng(gcj2bd[0], gcj2bd[1]);
scaleLatLng=new LatLng(gcj2bd[0]+0.001, gcj2bd[1]+0.001);
alLatLng.add(pointLatLng);
//构建Marker图标
BitmapDescriptor bitmap = BitmapDescriptorFactory
.fromResource(R.drawable.logo);//fromView(myView)建议用LinearLayout自定义view
OverlayOptions option = new MarkerOptions()
.position(pointLatLng)//draggable(true)长按图标才能拖拽
.icon(bitmap);
alOverlay.add(option);
mBaiduMap.addOverlays(alOverlay);//标记打点
//折线构建分段颜色索引数组
List&Integer& colors = new ArrayList&Integer&();
colors.add(Integer.valueOf(Color.YELLOW));
colors.add(Integer.valueOf(Color.GREEN));
OverlayOptions ooPolyline = new PolylineOptions()
.width(10)
.colorsValues(colors)
.points(alLatLng);
mBaiduMap.addOverlay(ooPolyline);//画折线
//指定地图显示范围
mBaiduMap.setMapStatusLimits(new LatLngBounds.Builder().include(scaleLatLng).include(scaleLatLng).build());
//定义地图显示状态
MapStatus mMapStatus = new MapStatus.Builder()
.target(targetLatLng)
.zoom(15f)
MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mMapStatus);
mBaiduMap.setMapStatus(mMapStatusUpdate);
//类型卫星地图
mBaiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);
}public static double[] gcj2bd(double lat, double lon){//http://bbs./forum.php?mod=viewthread&tid=10923&qq-pf-to=pcqq.discussion
double x_pi = 3.79324 * 3000.0 / 180.0;
double x = lon, y =
double z = Math.sqrt(x * x + y * y) + 0.00002 * Math.sin(y * x_pi);
double theta = Math.atan2(y, x) + 0.000003 * Math.cos(x * x_pi);
double bd_lon = z * Math.cos(theta) + 0.0065;
double bd_lat = z * Math.sin(theta) + 0.006;
return new double[] { bd_lat, bd_lon };
2.添加信息弹窗:
mBaiduMap.setOnMarkerClickListener(new OnMarkerClickListener() {
public boolean onMarkerClick(final Marker marker) {
Button button = new Button(getApplicationContext());
button.setBackgroundResource(R.drawable.popup);
button.setText(&更换图标&);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
marker.setIcon(bd);
mBaiduMap.hideInfoWindow();
LatLng ll = marker.getPosition();
InfoWindow mInfoWindow = new InfoWindow(button, ll, -47);
mBaiduMap.showInfoWindow(mInfoWindow);
3.GPS定位:
public void initLocation(Context context){
LocationClient mLocationClient = new LocationClient(context);
//声明LocationClient类
mLocationClient.registerLocationListener( new MyLocationListener(context) );
//注册监听函数
LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy);//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
option.setCoorType(&bd09ll&);//可选,默认gcj02,设置返回的定位结果坐标系
option.setScanSpan(1000);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
option.setOpenGps(true);//可选,默认false,设置是否使用gps
option.setLocationNotify(true);//可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
option.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
option.setIgnoreKillProcess(false);//可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死
option.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集
option.setEnableSimulateGps(false);//可选,默认false,设置是否需要过滤gps仿真结果,默认需要
mLocationClient.setLocOption(option);
mLocationClient.start();
* 位置广播bc
private class MyLocationListener implements BDLocationListener {
private Context mC
public MyLocationListener(Context mCon) {
this.mCon=mC
public void onReceiveLocation(BDLocation location) {
//Receive Location
StringBuffer sb = new StringBuffer(256);
sb.append(&time : &);
sb.append(location.getTime());
sb.append(&\nerror code : &);
sb.append(location.getLocType());
sb.append(&\nlatitude : &);
sb.append(location.getLatitude());
sb.append(&\nlontitude : &);
sb.append(location.getLongitude());
sb.append(&\nradius : &);
sb.append(location.getRadius());
if (location.getLocType() == BDLocation.TypeGpsLocation){// GPS定位结果
sb.append(&\nspeed : &);
sb.append(location.getSpeed());// 单位:公里每小时
sb.append(&\nsatellite : &);
sb.append(location.getSatelliteNumber());
sb.append(&\nheight : &);
sb.append(location.getAltitude());// 单位:米
sb.append(&\ndirection : &);
sb.append(location.getDirection());// 单位度
sb.append(&\naddr : &);
sb.append(location.getAddrStr());
sb.append(&\ndescribe : &);
sb.append(&gps定位成功&);
} else if (location.getLocType() == BDLocation.TypeNetWorkLocation){// 网络定位结果
sb.append(&\naddr : &);
sb.append(location.getAddrStr());
//运营商信息
sb.append(&\noperationers : &);
sb.append(location.getOperators());
sb.append(&\ndescribe : &);
sb.append(&网络定位成功&);
} else if (location.getLocType() == BDLocation.TypeOffLineLocation) {// 离线定位结果
sb.append(&\ndescribe : &);
sb.append(&离线定位成功,离线定位结果也是有效的&);
} else if (location.getLocType() == BDLocation.TypeServerError) {
sb.append(&\ndescribe : &);
sb.append(&服务端网络定位失败,可以反馈IMEI号和大体定位时间到loc-,会有人追查原因&);
} else if (location.getLocType() == BDLocation.TypeNetWorkException) {
sb.append(&\ndescribe : &);
sb.append(&网络不同导致定位失败,请检查网络是否通畅&);
} else if (location.getLocType() == BDLocation.TypeCriteriaException) {
sb.append(&\ndescribe : &);
sb.append(&无法获取有效定位依据导致定位失败,一般是由于手机的原因,处于飞行模式下一般会造成这种结果,可以试着重启手机&);
sb.append(&\nlocationdescribe : &);
sb.append(location.getLocationDescribe());// 位置语义化信息
List&Poi& list = location.getPoiList();// POI数据
if (list != null) {
sb.append(&\npoilist size = : &);
sb.append(list.size());
for (Poi p : list) {
sb.append(&\npoi= : &);
sb.append(p.getId() + & & + p.getName() + & & + p.getRank());
mLatitude = location.getLatitude();
mLongitude = location.getLongitude();
mCity= location.getCity();
Log.e(&--------------&,&------------------城市&+mCity);
// 构造定位数据  
         
mBaiduMap.setMyLocationEnabled(true);  
MyLocationData locData = new MyLocationData.Builder()  
.accuracy(location.getRadius()) 
.direction(90)//方向信息,顺时针0-360
.latitude(location.getLatitude())
.longitude(location.getLongitude()).build();  
mBaiduMap.setMyLocationData(locData); //设置定位数据  
//// 设置定位图层的配置(定位模式,是否允许方向信息,用户自定义定位图标)  
//BitmapDescriptor mCurrentMarker = BitmapDescriptorFactory .fromResource(R.drawable.ic_launcher);  
//MyLocationConfiguration config = new MyLocationConfiguration(MyLocationConfiguration.LocationMode.NORMAL,true, mCurrentMarker);  
//mBaiduMap.setMyLocationConfigeration(config); 
4.方向传感器和定位图标方向MyLocationData.direction():
onDestroy(),onResume(),onPause()再调用百度地图对应方法
更多:修改IP地址
经纬度地址转换:Geocoder geocoder = new Geocoder(this);
两点之间距离:float[] results=new float[1]; &
Location.distanceBetween(mlatitude, mlongitude,latitude,longitude, results);
1、IP网络定位方法:
import&android.provider.S
import&android.content.ContentR
ps:在Setting.System中有以下标志
WIFI_USE_STATIC_IP
WIFI_STATIC_IP
WIFI_STATIC_NETMASK
WIFI_STATIC_GATEWAY
WIFI_STATIC_DNS1&and&WIFI_STATIC_DNS2
2、在AndroidManifest中加入&uses-permission&&android:name=&android.permission.WRITE_SETTINGS&/&
3、在Activity中可以这样用:
final&ContentResolver&mContentResolver&=&getContentResolver();
Settings.System.putInt(&mContentResolver,&Settings.System.WIFI_USE_STATIC_IP,&1);
Settings.System.putString(&mContentResolver,&Settings.System.WIFI_STATIC_IP,&&你的ip地址&);

参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:20912次
排名:千里之外
原创:36篇
转载:10篇
(1)(1)(1)(2)(1)(1)(2)(4)(5)(4)(12)(9)

我要回帖

更多关于 优先级lp是什么意思 的文章

 

随机推荐