歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Android入門之簡單GPS定位實例

Android入門之簡單GPS定位實例

添加權限:android.permission.ACCESS_FINE_LOCATION

  1. import android.app.Activity;  
  2. import android.content.Context;  
  3. import android.location.*;  
  4. import android.os.*;  
  5. import android.widget.*;  
  6.   
  7. public class GPSTest extends Activity {  
  8.       
  9.     private LinearLayout mainView=null;  
  10.     private TextView infoView=null;  
  11.     private TextView locationView=null;  
  12.       
  13.     private LocationManager locationManager=null;  
  14.     private LocationListener locationListener=null;  
  15.   
  16.     public void onCreate(Bundle savedInstanceState) {  
  17.         super.onCreate(savedInstanceState);  
  18.         mainView=new LinearLayout(this);  
  19.         mainView.setOrientation(LinearLayout.VERTICAL);  
  20.         infoView=new TextView(this);  
  21.         mainView.addView(infoView);  
  22.         locationView=new TextView(this);  
  23.         mainView.addView(locationView);  
  24.         setContentView(mainView);  
  25.         locationManager_init();  
  26.     }  
  27.     /*locationManager初始化*/  
  28.     void locationManager_init(){  
  29.         locationManager =(LocationManager)this.getSystemService(Context.LOCATION_SERVICE);  
  30.         locationListener_init();  
  31.         locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,1000,0, locationListener);  
  32.     }  
  33.     /*locatonListener初始化*/  
  34.     void locationListener_init(){  
  35.         locationListener=new LocationListener(){  
  36.             //位置變化時觸發   
  37.             public void onLocationChanged(Location location) {  
  38.                 locationView.setText("時間:"+location.getTime()+"\n");  
  39.                 locationView.append("經度:"+location.getLongitude()+"\n");  
  40.                 locationView.append("緯度:"+location.getLatitude()+"\n");  
  41.                 locationView.append("海拔:"+location.getAltitude()+"\n");  
  42.             }  
  43.             //gps禁用時觸發   
  44.             public void onProviderDisabled(String provider) {  
  45.                 infoView.setText("當前GPS狀態:禁用\n");  
  46.             }  
  47.             //gps開啟時觸發   
  48.             public void onProviderEnabled(String provider) {  
  49.                 infoView.setText("當前GPS狀態:開啟\n");  
  50.             }  
  51.             //gps狀態變化時觸發   
  52.             public void onStatusChanged(String provider, int status,Bundle extras) {  
  53.                 if(status==LocationProvider.AVAILABLE){  
  54.                     infoView.setText("當前GPS狀態:可見的\n");  
  55.                 }else if(status==LocationProvider.OUT_OF_SERVICE){  
  56.                     infoView.setText("當前GPS狀態:服務區外\n");  
  57.                 }else if(status==LocationProvider.TEMPORARILY_UNAVAILABLE){  
  58.                     infoView.setText("當前GPS狀態:暫停服務\n");  
  59.                 }  
  60.             }  
  61.         };  
  62.     }  
  63. }  
Copyright © Linux教程網 All Rights Reserved