android根据基站信息获取经纬度
来源:互联网 发布:linux mmap 共享内存 编辑:程序博客网 时间:2024/05/09 21:01
private boolean displayMap(int cellID, int lac) throws Exception { String urlString = "http://www.google.com/glm/mmap"; //---open a connection to Google Maps API--- URL url = new URL(urlString); URLConnection conn = url.openConnection(); HttpURLConnection httpConn = (HttpURLConnection) conn; httpConn.setRequestMethod("POST"); httpConn.setDoOutput(true); httpConn.setDoInput(true); httpConn.connect(); //---write some custom data to Google Maps API--- OutputStream outputStream = httpConn.getOutputStream(); WriteData(outputStream, cellID, lac); //---get the response--- InputStream inputStream = httpConn.getInputStream(); DataInputStream dataInputStream = new DataInputStream(inputStream); //---interpret the response obtained--- dataInputStream.readShort(); dataInputStream.readByte(); int code = dataInputStream.readInt(); if (code == 0) { double lat = (double) dataInputStream.readInt() / 1000000D; double lng = (double) dataInputStream.readInt() / 1000000D; dataInputStream.readInt(); dataInputStream.readInt(); dataInputStream.readUTF(); Toast.makeText(this,lat+" "+lng,Toast.LENGTH_LONG).show(); // Toast.makeText(this, "lat and long"+lat+"\n"+lng,200 ); //---display Google Maps--- String uriString = "geo:" + lat + "," + lng; Intent intent = new Intent(android.content.Intent.ACTION_VIEW,Uri.parse(uriString)); // System.out.println("hiii"+uriString); startActivity(intent); return true; } else { return false; } }