wifi是基于服务器所在区域,基站是你上网附近的发射塔所在的区域。
B. wifi网络定位原理是怎样的
WiFi网络定位需要采集wifi接入点的位置信息。wifi热点越来越多,在城市中更趋向于空间任何一点都能接收到至少一个AP的信号。热点只要通电,都一定会向周围发射信号。信号中包含此热点的唯一全球ID。即使距离此热点比较远,无法建立连接,但还是可以侦听到它的存在。
热点一般都是很少变位置的,比较固定。定位端只要侦听一下附近都有哪些热点,检测一下每个热点的信号强弱,然后把这些信息发送给Skyhook的服务器。服务器根据这些信息,查询每个热点在数据库里记录的坐标,进行运算,就能知道客户端的具体位置了,再把坐标告诉客户端。只要收到的AP信号越多,定位就会越准。
C. 求android室内wifi精准定位,还要获得所有客户端的准确地址,跪谢了!
其实,我是来赚分的............
packagecom.lq.desktop;
importjava.awt.Dimension;
importjava.awt.FlowLayout;
importjava.awt.Point;
importjava.awt.TextArea;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjava.awt.event.WindowAdapter;
importjava.awt.event.WindowEvent;
importjava.awt.event.WindowListener;
importjava.io.IOException;
importjava.io.InputStream;
importjava.net.HttpURLConnection;
importjava.net.URL;
importjava.util.ArrayList;
importjava.util.Collection;
importjava.util.Iterator;
importjava.util.List;
importjava.util.Map;
importjava.util.concurrent.Executors;
importjava.util.concurrent.ScheledExecutorService;
importjava.util.concurrent.TimeUnit;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importorg.codehaus.jackson.map.ObjectMapper;
importcom.lq.socket.PlayPic;
importcom.lq.util.GuiCamera;
importcom.lq.util.ImageUtil;
importcom.lq.util.MyPublic;
publicclassDesktopMain{
=newObjectMapper();
privateStringreturnStr="";
//文本框
privatestaticTextAreata;
//确定按钮
privatestaticJButtonjb;
privatestaticJButtonjbRefresh;
privatestaticList<String>list;
privatestaticintcount=20;//默认开启线程数:20
publicstaticvoidmain(String[]args){
JFramejf=newJFrame("20中pda控制平台");
Dimensiond=newDimension(670,450);
jf.setSize(d);
Pointp=newPoint(300,200);
jf.setLocation(p);
jf.setLayout(newFlowLayout());
jb=newJButton("确定");
jb.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEventarg0){
ScheledExecutorServiceses=Executors
.();
ses.scheleAtFixedRate(newRunnable(){
@Override
publicvoidrun(){
sendPic();
}
},0,1,TimeUnit.SECONDS);
}
});
ta=newTextArea(25,70);
ta.setText(newDesktopMain().setIP());
jbRefresh=newJButton("刷新");
jbRefresh.addActionListener(newActionListener(){
@Override
publicvoidactionPerformed(ActionEventarg0){
ta.setText(newDesktopMain().setIP());
}
});
jf.add(ta);
jf.add(jbRefresh);
jf.add(jb);
jf.addWindowListener(newWindowAdapter(){
@Override
publicvoidwindowClosing(WindowEventarg0){
System.exit(0);
System.gc();
super.windowClosing(arg0);
}
});
jf.setVisible(true);
}
//发送图片
privatestaticvoidsendPic(){
//清空缓存
MyPublic.getInstance().getBaos().reset();
//抓取屏幕
GuiCamera.snapShot();
//压缩图片
ImageUtil.compressPic();
/**
*多线程处理
*/
intj=getThreadCount();
for(inti=0;i<count;i++){
intz=(i+1)*j;
PlayPicplay=newPlayPic(list.subList(i*j,z));
play.start();
}
}
(){
intj;
if(list.size()<count){
count=list.size();
}
if(list.size()%count==0){
j=list.size()/count;
}else{
j=list.size()/count+1;
}
returnj;
}
//读取网络的ip
privateStringsetIP(){
URLurl;
HttpURLConnectionconn;
InputStreamis;
Map<String,String>map;
try{
url=newURL(
"http://172.17.52.121:8080/IPAdapter/IPServlet?ip=zklc8888");
conn=(HttpURLConnection)url.openConnection();
is=conn.getInputStream();
map=objectMapper.readValue(is,Map.class);
list=conversion(map);
for(inti=0;i<list.size();i++){
returnStr+=list.get(i);
}
}catch(IOExceptione){
e.printStackTrace();
}
returnreturnStr.toString();
}
/**
*Map转成List
*
*@parammap
*@returnList
*@author李琼
*/
privateList<String>conversion(Map<String,String>map){
List<String>list=newArrayList<String>();
Collection<String>c=map.values();
Iteratorit=c.iterator();
for(;it.hasNext();){
list.add(it.next().toString()+" ");
}
returnlist;
}
}
D. android基站与wifi定位中怎么样用高德地图服务器
需要高德的定位辅助APP,就我所知,只能在编译ROM时在frameworks/base/core/res/res/values/config.xml中添加如
<item>com.amap.android.location</item>
并加入相应包名的APP
要是你会反编译,可以在编译的时候试试
E. 如何在android程序中在打开无线定位
private void getLocation()02{03Location loc;04LocationManager locMan;05LocationProvider locPro;06List<LocationProvider> proList;07setContentView(R.layout.laoding);08locMan = (LocationManager) getSystemService(LOCATION_SERVICE);09proList = locMan.getProviders();10locPro = proList.get(0);11loc = locMan.getCurrentLocation(locPro.getName());12Lat = (float)loc.getLatitude();13Lon = (float)loc.getLongitude();14CreateView();15setContentView(customView);16} private void getLocation()02{03Location loc;04LocationManager locMan;05LocationProvider locPro;06List<LocationProvider> proList;07setContentView(R.layout.laoding);08locMan = (LocationManager) getSystemService(LOCATION_SERVICE);09proList = locMan.getProviders();10locPro = proList.get(0);11loc = locMan.getCurrentLocation(locPro.getName());12Lat = (float)loc.getLatitude();13Lon = (float)loc.getLongitude();14CreateView();15setContentView(customView);16}
F. 安卓开发中wifi定位可以用自己编的定位程序吗而不用封装好的程序
你打算用什么方法定位?有封装好的定位程序吗?
G. 安卓手机用wifi能定位 但是用移动网络就定位失败了 这是怎么回事啊
不是定位失败。信号问题 网速问题。如果你是普通2G的卡的话那你定位10次可能只能定位住3次 普通2G卡网速慢但信号好。 3G卡网速快信号远没有普通2G卡好。 还有一个问题就是。你在的那个地区不好定位
H. android 位置定位可以用wifi吗
可以,
1,利用wifi名称结合数据库定位
2,利用wifi的ip地址定位
I. 本科生毕业论文题目是“基于android的wifi定位”,应该从什么方面入手
找人帮写了,要么就是自己去查资料找例子,wifi定位例子很多的
J. android wifi定位 失败
谷歌好像已经把服务停了,所以没法用这个服务定位了