欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Android GPS定位,androidgps定位,import andro

来源: javaer 分享于  点击 985 次 点评:148

Android GPS定位,androidgps定位,import andro


import android.app.Activity;import android.content.Context;import android.location.Criteria;import android.location.Location;import android.location.LocationListener;import android.location.LocationManager;import android.os.Bundle;import android.util.Log;import android.widget.TextView;import android.widget.Toast;public class GPSActivity extends Activity {    //声明位置管理对象     private LocationManager locationManager;     //声明位置监听对象     private LocationListener locationListener;     //声明字符串变量     String locationprovider;     //声明显示文本视图组建     private TextView textview;    /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);        //获得文本视图        textview = (TextView)this.findViewById(R.id.textView1);        try{            //新建Criteria类            Criteria locationcriteria = new Criteria();            //设置精确精度            locationcriteria.setAccuracy(Criteria.ACCURACY_FINE);            //不提供海拔高度信息            locationcriteria.setAltitudeRequired(false);            //不提供方向信息            locationcriteria.setBearingRequired(false);            //允许运营商计费            locationcriteria.setCostAllowed(true);            //设置电池消耗为低耗费            locationcriteria.setPowerRequirement(Criteria.POWER_LOW);            //使用getSystemService()方法获得位置管理器对象            locationManager            =(LocationManager)getSystemService(Context.LOCATION_SERVICE);            //locationManager.setTestProviderEnabled("gps", true);            Toast.makeText(GPSActivity.this, "getSystemService", Toast.LENGTH_SHORT).show();            //检查gps功能开启            if(checkgps()){                locationprovider                 =locationManager.getBestProvider(locationcriteria, true);                Log.d("provider", locationprovider);                //注册位置监听器                locationListener = new MyLocationListener();                locationManager.requestLocationUpdates(locationprovider, 1000, 0,locationListener);            }        }catch(Exception e){            Toast.makeText(GPSActivity.this, "异常错误"+e.toString(),Toast.LENGTH_LONG).show();        }    }    private class MyLocationListener implements LocationListener{         /**          * 若位置发生变化,onLocationChanged方法被调用          */        @Override        public void onLocationChanged(Location location) {            // TODO Auto-generated method stub            Log.i("位置发生变化", "Invoke");            if(location != null){                //获得经度                String latitude = Double.toString(location.getLatitude());//经度                //获得纬度               String longitude = Double.toString(location.getLongitude());//纬度                //在文本框中显示               textview = (TextView)GPSActivity.this.findViewById(R.id.textView1);                textview.setText("经度:"+longitude+"纬度"+latitude);            }            //locationManager.removeUpdates(this);            //locationManager.setTestProviderEnabled("gps", true);        }         //若屏蔽提供商,该方法被调用        @Override        public void onProviderDisabled(String provider) {            // TODO Auto-generated method stub            Log.i("屏蔽提供商", "Invode");        }        //若激活提供商,该方法被调用        @Override        public void onProviderEnabled(String provider) {            // TODO Auto-generated method stub            Log.i("激活提供商", "Invode");        }       //若状态发生变化,该方法被调用        @Override        public void onStatusChanged(String provider, int status, Bundle extras) {            // TODO Auto-generated method stub            Log.i("状态发生变化", "Invode");        }    }    private boolean checkgps(){        boolean providerEnabled         = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);        //若被激活,则返回真值        if(providerEnabled ==true){            Toast.makeText(this, "Gps模块活动正常", Toast.LENGTH_SHORT).show();            return true;        }        else{            Toast.makeText(this, "请开启GPS", Toast.LENGTH_SHORT);            return false;        }    }}

AndroidManifest.xml

None
相关栏目:

用户点评