Android入门之简单GPS定位实例
Android入门之简单GPS定位实例
Android入门之简单GPS定位实例
添加权限:android.permission.ACCESS_FINE_LOCATION
- import android.app.Activity;
- import android.content.Context;
- import android.location.*;
- import android.os.*;
- import android.widget.*;
- public class GPSTest extends Activity {
- private LinearLayout mainView=null;
- private TextView infoView=null;
- private TextView locationView=null;
- private LocationManager locationManager=null;
- private LocationListener locationListener=null;
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- mainView=new LinearLayout(this);
- mainView.setOrientation(LinearLayout.VERTICAL);
- infoView=new TextView(this);
- mainView.addView(infoView);
- locationView=new TextView(this);
- mainView.addView(locationView);
- setContentView(mainView);
- locationManager_init();
- }
- /*locationManager初始化*/
- void locationManager_init(){
- locationManager =(LocationManager)this.getSystemService(Context.LOCATION_SERVICE);
- locationListener_init();
- locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,1000,0, locationListener);
- }
- /*locatonListener初始化*/
- void locationListener_init(){
- locationListener=new LocationListener(){
- //位置变化时触发
- public void onLocationChanged(Location location) {
- locationView.setText("时间:"+location.getTime()+"\n");
- locationView.append("经度:"+location.getLongitude()+"\n");
- locationView.append("纬度:"+location.getLatitude()+"\n");
- locationView.append("海拔:"+location.getAltitude()+"\n");
- }
- //gps禁用时触发
- public void onProviderDisabled(String provider) {
- infoView.setText("当前GPS状态:禁用\n");
- }
- //gps开启时触发
- public void onProviderEnabled(String provider) {
- infoView.setText("当前GPS状态:开启\n");
- }
- //gps状态变化时触发
- public void onStatusChanged(String provider, int status,Bundle extras) {
- if(status==LocationProvider.AVAILABLE){
- infoView.setText("当前GPS状态:可见的\n");
- }else if(status==LocationProvider.OUT_OF_SERVICE){
- infoView.setText("当前GPS状态:服务区外\n");
- }else if(status==LocationProvider.TEMPORARILY_UNAVAILABLE){
- infoView.setText("当前GPS状态:暂停服务\n");
- }
- }
- };
- }
- }
评论暂时关闭