package com.dianping.testlocate;
import java.util.HashMap;
import com.dianping.locate.utils.DPLocation;
import com.dianping.locate.utils.DPLocationClient;
import com.dianping.locate.utils.DPLocationClientOption;
import com.dianping.locate.utils.DPLocationClientOption.Offset_type;
import com.dianping.locate.utils.DPLocationListener;
import com.dianping.locate.utils.DemoApiTool;
import com.hamber.testlocate.R;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity implements View.OnClickListener {
public static final String TAG = MainActivity.class.getSimpleName();
private Button mBtnLocate;
private TextView mTvResult;
private DPLocationClient locClient;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mBtnLocate = (Button) findViewById(R.id.btn_locate);
mBtnLocate.setOnClickListener(this);
mTvResult = (TextView) findViewById(R.id.tv_result);
locClient = new DPLocationClient(this);
MyLocationListener listener = new MyLocationListener();
locClient.registerLocationListener(listener);
// mTvResult.setText(testSign());
}
@Override
protected void onDestroy() {
super.onDestroy();
locClient.cancleLocation();
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_locate:
if (locClient != null)
{
mTvResult.setText("");
DPLocationClientOption clientOption = new DPLocationClientOption();
clientOption.setOffset_type(Offset_type.GAODE);
locClient.setClientOption(clientOption);
locClient.requestLocation();
}
else
{
Log.d("DPLocSDK", "locClient is null or not started");
}
break;
default:
break;
}
}
public class MyLocationListener implements DPLocationListener {
@Override
public void onReceiveLocation(DPLocation location) {
if (location == null)
return ;
StringBuffer sb = new StringBuffer(256);
sb.append("status:").append(location.getStatus());
sb.append("\n city:").append(location.getCity());
sb.append("\n latitude:").append(location.getLatitude());
sb.append("\n longitude:").append(location.getLongitude());
mTvResult.setText(sb.toString());
}
}
}