匿名用户
1级
-09-15 回答
importcom.baidu.location.BDLocation;
importcom.baidu.location.BDLocationListener;
importcom.baidu.location.LocationClient;
importcom.baidu.location.LocationClientOption;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.util.Log;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.TextView;
publicclassmainextendsActivity{
privateLocationClientmLocationClient=null;
privateButtonmStartBtn=null;
privateTextViewmTextView=null;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mStartBtn=(Button)findViewById(R.id.button1);
mTextView=(TextView)findViewById(R.id.textview1);
mLocationClient=newLocationClient(this);
LocationClientOptionoption=newLocationClientOption();
option.setOpenGps(true);//打开gps
option.setCoorType("bd09ll");//设置坐标类型为bd09ll
option.setPriority(WorkFirst);//设置网络优先
option.setProdName("locSDKDemo2");//设置产品线名称
option.setScanSpan(5000);//定时定位,每隔5秒钟定位一次。
mLocationClient.setLocOption(option);
mLocationClient.registerLocationListener(newBDLocationListener(){
@Override
publicvoidonReceiveLocation(BDLocationlocation){
if(location==null)
return;
StringBuffersb=newStringBuffer(256);
sb.append("time:");
sb.append(location.getTime());
sb.append("\nerrorcode:");
sb.append(location.getLocType());
sb.append("\nlatitude:");
sb.append(location.getLatitude());
sb.append("\nlontitude:");
sb.append(location.getLongitude());
sb.append("\nradius:");
sb.append(location.getRadius());
if(location.getLocType()==BDLocation.TypeGpsLocation){
sb.append("\nspeed:");
sb.append(location.getSpeed());
sb.append("\nsatellite:");
sb.append(location.getSatelliteNumber());
}elseif(location.getLocType()==BDLocation.TypeNetWorkLocation){
sb.append("\naddr:");
sb.append(location.getAddrStr());
}
sb.append("\nsdkversion:");
sb.append(mLocationClient.getVersion());
mTextView.setText(sb.toString());
}
publicvoidonReceivePoi(BDLocationlocation){
//return;
}
});
mStartBtn.setOnClickListener(newOnClickListener(){
@Override
publicvoidonClick(Viewv){
if(mLocationClient==null)return;
if(mLocationClient.isStarted()){
mLocationClient.stop();
mStartBtn.setText("开始");
}else{
mLocationClient.start();
mStartBtn.setText("关闭");
}
}
});
}
@Override
publicvoidonDestroy(){
if(mLocationClient!=null&&mLocationClient.isStarted()){
mLocationClient.stop();
mLocationClient=null;
}
super.onDestroy();
}