您的位置:首页 > 移动开发 > Android开发

Android利用百度定位SDK获取当前城市位置

2014-02-09 23:47 1686 查看
1.下载百度库文件将liblocSDK4.so文件拷贝到libs/armeabi目录下(如果没有的话可以手动创建该目录)。将
locSDK4.0.jar文件拷贝到工程的libs目录下。


2.配置service

<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote" >
</service>


3.配置所需的权限

<uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permissionandroid:name="android.permission.INTERNET"/>
<uses-permissionandroid:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permissionandroid:name="android.permission.READ_LOGS"></uses-permission>


4.参考代码

import com.baidu.location.BDLocation;
import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class OneKeyRegisterActivity extends Activity {
private TextView mTv = null;
public LocationClient mLocationClient = null;
public MyLocationListenner myListener = new MyLocationListenner();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_onekeyregister);
mLocationClient = new LocationClient( this );
mLocationClient.registerLocationListener( myListener );
mTv = (TextView)findViewById(R.id.textview);
setLocationOption();
mLocationClient.start();
}
private void setLocationOption() {
// TODO Auto-generated method stub
LocationClientOption option = new LocationClientOption();
option.setOpenGps(true); //打开gps
option.setServiceName("com.baidu.location.service_v2.9");
option.setPoiExtraInfo(true);
option.setAddrType("all");
option.setPriority(LocationClientOption.NetWorkFirst);
option.setPriority(LocationClientOption.GpsFirst);       //gps
option.setPoiNumber(10);
option.disableCache(true);
mLocationClient.setLocOption(option);
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
mLocationClient.stop();
super.onDestroy();
}
public class MyLocationListenner  implements BDLocationListener{
@Override
public void onReceiveLocation(BDLocation arg0) {
// TODO Auto-generated method stub
mTv.setText(arg0.getProvince() + arg0.getCity() + arg0.getStreet());
}
@Override
public void onReceivePoi(BDLocation arg0) {
// TODO Auto-generated method stub
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: