Android获取基站坐标代码

Android获取基站坐标代码:

package com.su.station;      import Java.io.BufferedReader;   import java.io.IOException;   import java.io.InputStreamReader;      import org.apache.http.HttpEntity;   import org.apache.http.HttpResponse;   import org.apache.http.client.methods.HttpPost;   import org.apache.http.entity.StringEntity;   import org.apache.http.impl.client.DefaultHttpClient;   import org.json.JSONArray;   import org.json.JSONObject;      import android.app.Activity;   import android.content.Context;   import android.location.Location;   import android.location.LocationManager;   import android.os.Bundle;   import android.telephony.TelephonyManager;   import android.telephony.gsm.GsmCellLocation;   import android.util.Log;   import android.widget.Toast;      public class TestStationLocationActivity extends Activity {       private static final String TAG = "TestStationLocationActivity";          /** Called when the activity is first created. */       @Override       public void onCreate(Bundle savedInstanceState) {           super.onCreate(savedInstanceState);           setContentView(R.layout.main);           Location location = getportLocation();           location.getLongitude();           Toast.makeText(this, location.getLatitude()+location.getLatitude()+""100).show();                  }              private Location getportLocation() {           Location loc = null ;           TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);           BufferedReader br = null;           try            {                  GsmCellLocation gcl = (GsmCellLocation) tm.getCellLocation();                   if (null == gcl)                   {                           return null;                   }                       int cid = gcl.getCid();                       int lac = gcl.getLac();                       int mcc = Integer.valueOf(tm.getNetworkOperator().substring(0,3));                       int mnc = Integer.valueOf(tm.getNetworkOperator().substring(3,5));                       JSONObject holder = new JSONObject();                       holder.put("version""1.1.0");                       holder.put("host""maps.google.com");                       holder.put("request_address"true);                                              JSONArray array = new JSONArray();                       JSONObject data = new JSONObject();                                              data.put("cell_id", cid);                       data.put("location_area_code", lac);                       data.put("mobile_country_code", mcc);                       data.put("mobile_network_code", mnc);                       array.put(data);                       holder.put("cell_towers", array);                       DefaultHttpClient client = new DefaultHttpClient();                       HttpPost post = new HttpPost("http://www.google.com/loc/json");                       StringEntity se = new StringEntity(holder.toString());                       post.setEntity(se);                       HttpResponse resp = client.execute(post);                       if (resp.getStatusLine().getStatusCode() == 200)                    {                           HttpEntity entity = resp.getEntity();                               br = new BufferedReader(new InputStreamReader(entity.getContent()));                               StringBuffer sb = new StringBuffer();                               String result = br.readLine();                               while (result != null)                                {                                       sb.append(result);                                       result = br.readLine();                               }                                                              JSONObject data_ = new JSONObject(sb.toString());                               data_ = (JSONObject) data_.get("location");                           loc = new Location(LocationManager.NETWORK_PROVIDER);                           loc.setLatitude((Double) data_.get("latitude"));                           loc.setLongitude((Double) data_.get("longitude"));                           Log.i(TAG, "latitude : " + loc.getLatitude() + "  longitude : " + loc.getLongitude());                           return loc;                   }                   return null;              }                       catch (Exception e)            {                   android.util.Log.e(TAG, "network get the latitude and longitude ocurr Exception error", e);           }           finally           {                   if (null != br)                   {                           try                            {                                   br.close();                           }                            catch (IOException e)                            {                                   android.util.Log.e(TAG, "network get the latitude and longitude when closed BufferedReader ocurr IOException error", e);                           }                   }           }           return loc;       }      }  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/ppfxd.html