最近项目用到了定位,所有我就搞了个定位当前城市的dome,感觉还蛮简单的,分享下我新学的知识
<!-- 百度定位的权限 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
<uses-permission android:name="android.permission.READ_LOGS"></uses-permission>
<!-- //key:开发者申请的key -->
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="c3YV5FwpY7hudgRzOymafHo6" />
<!-- 在application标签中声明service组件,每个app拥有自己单独的定位service -->
<service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote">
</service>
//这是MainActivity
package com.example.baidu_map;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import com.baidu.location.BDLocation;
import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import com.baidu.location.LocationClientOption.LocationMode;
public class MainActivity extends Activity {
private LocationClient locationClient;
private TextView badu_map_text;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
badu_map_text = (TextView) findViewById(R.id.badu_map_text);
//拿到服务器
locationClient = new LocationClient(this);
MyListener myListener = new MyListener();
locationClient.registerLocationListener(myListener);
LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy);
option.setCoorType("bd0911");
option.setIsNeedAddress(true);
option.setNeedDeviceDirect(true);
locationClient.setLocOption(option);
locationClient.start();
}
/**
* * @author Administrator
*
*/
class MyListener implements BDLocationListener{
@Override
public void onReceiveLocation(BDLocation location) {
if (location == null)
return;
//需要更多功能请拿这个点location。
String chengshi=location.getCity();
badu_map_text.setText(chengshi);
}
}
}
dome下载地址