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定位 失敗
谷歌好像已經把服務停了,所以沒法用這個服務定位了