android百度の位置づけ

10975 ワード

 1 package com.aihunqin.test;

 2 

 3 import android.app.Activity;

 4 import android.os.Bundle;

 5 import android.widget.TextView;

 6 

 7 import com.baidu.location.BDLocation;

 8 import com.baidu.location.BDLocationListener;

 9 import com.baidu.location.LLSInterface;

10 import com.baidu.location.LocationClient;

11 import com.baidu.location.LocationClientOption;

12 import com.baidu.location.LocationClientOption.LocationMode;

13 import com.example.aihunqin.R;

14 

15 public class BaiduLocation extends Activity {

16     public LocationClient mLocationClient;

17     public MyLocationListener mMyLocationListener;

18     public TextView mLocationResult;

19 

20     @Override

21     protected void onCreate(Bundle savedInstanceState) {

22 

23         super.onCreate(savedInstanceState);

24         mLocationClient = new LocationClient(getApplicationContext());

25         mMyLocationListener = new MyLocationListener();

26         mLocationClient.registerLocationListener(mMyLocationListener);

27         setContentView(R.layout.baidulocation);

28         mLocationResult = (TextView) findViewById(R.id.mLocationResult);

29         InitLocation();

30         mLocationClient.start();

31     }

32 

33     /**

34      *         

35      * 

36      * @author Alex

37      * 

38      */

39     public class MyLocationListener implements BDLocationListener {

40 

41         @Override

42         public void onReceiveLocation(BDLocation location) {

43             // Receive Location

44             StringBuffer sb = new StringBuffer(256);

45             sb.append("time:");

46             sb.append(location.getTime());

47             sb.append("
error code:"); 48 sb.append(location.getLocType()); 49 sb.append("
latitude:"); 50 sb.append(location.getLatitude()); 51 sb.append("
lontitude:"); 52 sb.append(location.getLongitude()); 53 sb.append("
radius:"); 54 sb.append(location.getRadius()); 55 if (location.getLocType() == BDLocation.TypeNetWorkLocation) { 56 sb.append("
addr:"); 57 sb.append(location.getAddrStr()); 58 // 59 sb.append("
operationers:"); 60 sb.append(location.getOperators()); 61 } 62 logMsg(sb.toString()); 63 } 64 } 65 66 /** 67 * 68 * 69 * @param str 70 */ 71 public void logMsg(String str) { 72 try { 73 if (mLocationResult != null) 74 mLocationResult.setText(str); 75 } catch (Exception e) { 76 e.printStackTrace(); 77 } 78 } 79 80 private void InitLocation() { 81 LocationClientOption option = new LocationClientOption(); 82 option.setLocationMode(LocationMode.Battery_Saving);// 83 option.setCoorType("bd09ll"); 84 option.setIsNeedAddress(true); 85 mLocationClient.setLocOption(option); 86 } 87 }