Java Code Examples for com.baidu.location.LocationClientOption#setOpenGps()

The following examples show how to use com.baidu.location.LocationClientOption#setOpenGps() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: BDLocationService.java    From Social with Apache License 2.0 6 votes vote down vote up
private void initLocation(){
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
    option.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系
    int span=1000;
    option.setScanSpan(span);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
    option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
    option.setOpenGps(true);//可选,默认false,设置是否使用gps
    option.setLocationNotify(true);//可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
    option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
    option.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
    option.setIgnoreKillProcess(false);//可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死
    option.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集
    option.setEnableSimulateGps(false);//可选,默认false,设置是否需要过滤gps仿真结果,默认需要
    mLocationClient.setLocOption(option);
}
 
Example 2
Source File: MapActivity.java    From foodie-app with Apache License 2.0 6 votes vote down vote up
private void initLocation() {
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy
    );//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
    option.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系
    int span = 2000;
    option.setScanSpan(0);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
    option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
    option.setOpenGps(true);//可选,默认false,设置是否使用gps
    option.setLocationNotify(true);//可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
    option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
    option.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
    option.setIgnoreKillProcess(false);//可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死
    option.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集
    option.setEnableSimulateGps(false);//可选,默认false,设置是否需要过滤gps仿真结果,默认需要
    mLocationClient.setLocOption(option);
}
 
Example 3
Source File: LocationUtils.java    From PlayTogether with Apache License 2.0 6 votes vote down vote up
private static void initLocation()
{
	LocationClientOption option = new LocationClientOption();
	option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy
	);//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
	option.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系
	int span = 0;
	option.setScanSpan(span);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
	option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
	option.setOpenGps(true);//可选,默认false,设置是否使用gps
	option.setLocationNotify(true);//可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
	option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation
	// .getLocationDescribe里得到,结果类似于“在北京天安门附近”
	option.setIsNeedLocationPoiList(false);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
	option.setIgnoreKillProcess(false);
	//可选,默认false,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认杀死
	option.SetIgnoreCacheException(true);//可选,默认false,设置是否收集CRASH信息,默认收集
	option.setEnableSimulateGps(false);//可选,默认false,设置是否需要过滤gps仿真结果,默认需要
	mClient.setLocOption(option);
}
 
Example 4
Source File: ShareLocationActivity.java    From imsdk-android with MIT License 6 votes vote down vote up
private void initLocationClient() {
    locationClient = new LocationClient(getApplicationContext());
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
    option.setCoorType(CoordinateType.BD09LL);
    option.setIsNeedAddress(true);
    option.setOpenGps(true);
    option.setLocationNotify(true);
    option.setNeedDeviceDirect(true);
    option.setIsNeedLocationDescribe(false);
    option.setIsNeedLocationPoiList(true);
    option.setIgnoreKillProcess(true);
    option.SetIgnoreCacheException(true);
    option.setEnableSimulateGps(true);
    //5s发送一次自己的位置
    option.setScanSpan(5000);
    locationClient.setLocOption(option);
    locationClient.registerLocationListener(this);
    locationClient.start();
}
 
Example 5
Source File: RouteBaiduBusActivity.java    From BmapLite with Apache License 2.0 6 votes vote down vote up
public void initLocationSDK() {
// 定位初始化
        mLocClient = new LocationClient(this);
        mLocClient.registerLocationListener(this);
        LocationClientOption option = new LocationClientOption();
        option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
        option.setCoorType("gcj02");
        option.setOpenGps(true);
        option.setScanSpan(1000);
        option.setIsNeedAltitude(true);
        option.setIsNeedAddress(false);

        mLocClient.setLocOption(option);

        MyLocationConfiguration configuration = new MyLocationConfiguration(MyLocationConfiguration.LocationMode.NORMAL, true, null);
        mBaiduMap.setMyLocationConfiguration(configuration);

        mLocClient.start();

        isFirstLoc = false;

    }
 
Example 6
Source File: BaiduMapRouteFragment.java    From BmapLite with Apache License 2.0 6 votes vote down vote up
public void initLocationSDK() {
    // 定位初始化
    mLocClient = new LocationClient(getActivity());
    mLocClient.registerLocationListener(this);
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
    option.setCoorType("gcj02");
    option.setOpenGps(true);
    option.setScanSpan(1000);
    option.setIsNeedAltitude(true);
    option.setIsNeedAddress(false);

    mLocClient.setLocOption(option);

    MyLocationConfiguration configuration = new MyLocationConfiguration(MyLocationConfiguration.LocationMode.NORMAL, true, null);
    mBaiduMap.setMyLocationConfiguration(configuration);

    mLocClient.start();
    isFirstLoc = false;

}
 
Example 7
Source File: BaiduMapSelectPoiFragment.java    From BmapLite with Apache License 2.0 6 votes vote down vote up
public void initBaiduSdk() {
    // 定位初始化
    mLocClient = new LocationClient(getActivity());
    mLocClient.registerLocationListener(this);
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
    option.setCoorType("gcj02");
    option.setOpenGps(true);
    option.setScanSpan(1000);
    option.setIsNeedAltitude(true);
    option.setIsNeedAddress(false);

    mLocClient.setLocOption(option);

    MyLocationConfiguration configuration = new MyLocationConfiguration(MyLocationConfiguration.LocationMode.NORMAL, true, null);
    mBaiduMap.setMyLocationConfiguration(configuration);

    mLocClient.start();

}
 
Example 8
Source File: BaiduLocationService.java    From GeometricWeather with GNU Lesser General Public License v3.0 5 votes vote down vote up
@Override
public void requestLocation(Context context, @NonNull LocationCallback callback){
    this.callback = callback;

    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Battery_Saving); // 可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
    option.setCoorType("wgs84"); // 可选,默认gcj02,设置返回的定位结果坐标系
    option.setScanSpan(0); // 可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
    option.setIsNeedAddress(true); // 可选,设置是否需要地址信息,默认不需要
    option.setOpenGps(false); // 可选,默认false,设置是否使用gps
    option.setLocationNotify(false); // 可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
    option.setIsNeedLocationDescribe(false); // 可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
    option.setIsNeedLocationPoiList(false); // 可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
    option.setIgnoreKillProcess(false); // 可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死
    option.SetIgnoreCacheException(true); // 可选,默认false,设置是否收集CRASH信息,默认收集
    option.setEnableSimulateGps(false); // 可选,默认false,设置是否需要过滤gps仿真结果,默认需要
    option.setWifiCacheTimeOut(5 * 60 * 1000); // 可选,如果设置了该接口,首次启动定位时,会先判断当前WiFi是否超出有效期,若超出有效期,会先重新扫描WiFi,然后定位
    client = new LocationClient(context.getApplicationContext());
    client.setLocOption(option);
    client.registerLocationListener(listener);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        manager.createNotificationChannel(getLocationNotificationChannel(context));
        client.enableLocInForeground(
                GeometricWeather.NOTIFICATION_ID_LOCATION,
                getLocationNotification(context));
    }
    client.start();
}
 
Example 9
Source File: BDLocationUtil.java    From Simpler with Apache License 2.0 5 votes vote down vote up
/**
 * 获取LocationClient配置
 * @return
 */
public static LocationClientOption getLocationClientOption() {
    LocationClientOption option = new LocationClientOption();
    //可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
    option.setLocationMode(LocationClientOption.LocationMode.Battery_Saving);
    //可选,默认gcj02,设置返回的定位结果坐标系
    option.setCoorType("bd09ll");
    //可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
    int span = 1000;
    option.setScanSpan(span);
    //可选,设置是否需要地址信息,默认不需要
    option.setIsNeedAddress(true);
    //可选,默认false,设置是否使用gps
    option.setOpenGps(true);
    //可选,默认false,设置是否当GPS有效时按照1S/1次频率输出GPS结果
    option.setLocationNotify(true);
    //可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
    option.setIsNeedLocationDescribe(true);
    //可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
    option.setIsNeedLocationPoiList(true);
    //可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死
    option.setIgnoreKillProcess(false);
    //可选,默认false,设置是否收集CRASH信息,默认收集
    option.SetIgnoreCacheException(false);
    //可选,默认false,设置是否需要过滤GPS仿真结果,默认需要
    option.setEnableSimulateGps(false);
    return option;
}
 
Example 10
Source File: EaseBaiduMapActivity.java    From Study_Android_Demo with Apache License 2.0 5 votes vote down vote up
private void showMapWithLocationClient() {
	String str1 = getResources().getString(R.string.Making_sure_your_location);
	progressDialog = new ProgressDialog(this);
	progressDialog.setCanceledOnTouchOutside(false);
	progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
	progressDialog.setMessage(str1);

	progressDialog.setOnCancelListener(new OnCancelListener() {

		public void onCancel(DialogInterface arg0) {
			if (progressDialog.isShowing()) {
				progressDialog.dismiss();
			}
			Log.d("map", "cancel retrieve location");
			finish();
		}
	});

	progressDialog.show();

	mLocClient = new LocationClient(this);
	mLocClient.registerLocationListener(myListener);

	LocationClientOption option = new LocationClientOption();
	option.setOpenGps(true);// open gps
	// option.setCoorType("bd09ll"); 
	// Johnson change to use gcj02 coordination. chinese national standard
	// so need to conver to bd09 everytime when draw on baidu map
	option.setCoorType("gcj02");
	option.setScanSpan(30000);
	option.setAddrType("all");
	mLocClient.setLocOption(option);
}
 
Example 11
Source File: BaiduMapFragment.java    From BmapLite with Apache License 2.0 5 votes vote down vote up
public void initLocationSdk() {
    // 定位初始化
    mLocClient = new LocationClient(getActivity());
    mLocClient.registerLocationListener(this);
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
    option.setCoorType("gcj02");
    option.setOpenGps(true);
    option.setScanSpan(1000);
    option.setIsNeedAltitude(true);
    option.setIsNeedAddress(false);

    mLocClient.setLocOption(option);

    MyLocationConfiguration configuration = new MyLocationConfiguration(MyLocationConfiguration.LocationMode.NORMAL, true, null);
    mBaiduMap.setMyLocationConfiguration(configuration);

    mLocClient.start();

    try {
        LocationManager locManager = (LocationManager) getActivity().getSystemService(Context.LOCATION_SERVICE);
        if (!locManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
            onMessage(getResources().getString(R.string.gps_enabled_false));
        }
    } catch (Exception e) {
        e.printStackTrace();
    }


}
 
Example 12
Source File: BaiduLocation.java    From cordova-baidu-location with MIT License 5 votes vote down vote up
/**
 * 配置定位SDK参数
 */
private void initLocation(int span) {
    LocationClientOption option = new LocationClientOption();
    // 可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
    option.setLocationMode(LocationMode.Hight_Accuracy);
    // 可选,默认gcj02,设置返回的定位结果坐标系
    option.setCoorType("bd09ll");
    // 可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
    if (stopListen)
        option.setScanSpan(0);
    else
        option.setScanSpan(span);
    // 可选,设置是否需要地址信息,默认不需要
    // option.setIsNeedAddress(false);
    // 可选,默认false,设置是否使用gps
    option.setOpenGps(true);
    // 可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
    option.setLocationNotify(false);
    /* 可选,默认false,设置是否需要位置语义化结果,
     * 可以在BDLocation.getLocationDescribe里得到,
     * 结果类似于“在北京天安门附近”
     */
    // option.setIsNeedLocationDescribe(true);
    // 可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
    // option.setIsNeedLocationPoiList(true);
    // 可选,默认false,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认杀死
    // option.setIgnoreKillProcess(false);
    // 可选,默认false,设置是否收集CRASH信息,默认收集
    // option.SetIgnoreCacheException(true);
    // 可选,默认false,设置是否需要过滤gps仿真结果,默认需要
    // option.setEnableSimulateGps(false);
    mLocationClient.setLocOption(option);
}
 
Example 13
Source File: BaiduLocation.java    From cordova-qdc-baidu-location with MIT License 5 votes vote down vote up
/**
 * 配置定位SDK参数
 */
private void initLocation() {
    LocationClientOption option = new LocationClientOption();
    // 可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
    option.setLocationMode(LocationMode.Hight_Accuracy);
    // 可选,默认gcj02,设置返回的定位结果坐标系
    option.setCoorType("bd09ll");
    // 可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
    // option.setScanSpan(0);
    // 可选,设置是否需要地址信息,默认不需要
    // option.setIsNeedAddress(false);
    // 可选,默认false,设置是否使用gps
    option.setOpenGps(true);
    // 可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
    option.setLocationNotify(false);
    /* 可选,默认false,设置是否需要位置语义化结果,
     * 可以在BDLocation.getLocationDescribe里得到,
     * 结果类似于“在北京天安门附近”
     */
    // option.setIsNeedLocationDescribe(true);
    // 可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
    // option.setIsNeedLocationPoiList(true);
    // 可选,默认false,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认杀死
    // option.setIgnoreKillProcess(false);
    // 可选,默认false,设置是否收集CRASH信息,默认收集
    // option.SetIgnoreCacheException(true);
    // 可选,默认false,设置是否需要过滤gps仿真结果,默认需要
    // option.setEnableSimulateGps(false);
    mLocationClient.setLocOption(option);
}
 
Example 14
Source File: MapActivity.java    From BaiduMap-TrafficAssistant with MIT License 5 votes vote down vote up
private void initLocation() {

		mLocationMode = LocationMode.NORMAL;

		mLocationClient = new LocationClient(this);
		mLocationListener = new MyLocationListener();
		mLocationClient.registerLocationListener(mLocationListener);

		LocationClientOption option = new LocationClientOption();
		option.setCoorType("bd09ll");
		option.setIsNeedAddress(true);
		option.setOpenGps(true);
		option.setScanSpan(1000);// 设置定位一秒钟请求一次;

		mLocationClient.setLocOption(option);

		// 初始化图标
		mIconLocation = BitmapDescriptorFactory
				.fromResource(R.drawable.navi_map_gps_locked);

		myOrientationListener = new MyOrientationListener(context);

		myOrientationListener
				.setOnOrientationListener(new OnOrientationListener() {

					@Override
					public void onOrientationChanged(float x) {

						mCurrentX = x;
					}
				});

	}
 
Example 15
Source File: LocationUtil.java    From apollo-DuerOS with Apache License 2.0 5 votes vote down vote up
private LocationClientOption initLocationOption() {
    LocationClientOption option = new LocationClientOption();
    // optional,default is high accuracy. low power ,only on the device
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
    // optional,default is gcj02,later can return converted coordinate system type
    option.setCoorType("gcj02");
    // optional,default is 0,only location once,
    // it is work when inteval time between location request is greater than or equal to 1000ms
    option.setScanSpan(SPAN_MIL);
    // optional,default is false
    option.setIsNeedAddress(false);
    // optional,default is false,whether use gps
    option.setOpenGps(true);
    // optional,default is false,whether output GPS results acording to 1S1 frequency when gps is valid
    option.setLocationNotify(false);
    // optional,default is false,whether need the describe of the location
    option.setIsNeedLocationDescribe(false);
    // optional,default is false,whether need POI result which can get in BDLocation.getPoiList
    option.setIsNeedLocationPoiList(false);
    // optional,default is true,there is a service in the loaction sdk,
    // and it run in a independent process, whether kill the service when stop
    option.setIgnoreKillProcess(true);
    // optional,default is false,whether collect crash info
    option.SetIgnoreCacheException(false);
    // optional,default is false,weather filter the result of the gps simulation
    option.setEnableSimulateGps(true);

    return option;
}
 
Example 16
Source File: HomePresenter.java    From easyweather with MIT License 5 votes vote down vote up
private void initLocation() {
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);//可选,默认高精度,设置定位模式,高精度,低功耗,仅设备
    option.setCoorType("bd09ll");//可选,默认gcj02,设置返回的定位结果坐标系
    option.setScanSpan(1000);//可选,默认0,即仅定位一次,设置发起定位请求的间隔需要大于等于1000ms才是有效的
    option.setIsNeedAddress(true);//可选,设置是否需要地址信息,默认不需要
    option.setOpenGps(true);//可选,默认false,设置是否使用gps
    option.setLocationNotify(true);//可选,默认false,设置是否当GPS有效时按照1S/1次频率输出GPS结果
    option.setIsNeedLocationDescribe(true);//可选,默认false,设置是否需要位置语义化结果,可以在BDLocation.getLocationDescribe里得到,结果类似于“在北京天安门附近”
    option.setIsNeedLocationPoiList(true);//可选,默认false,设置是否需要POI结果,可以在BDLocation.getPoiList里得到
    option.setIgnoreKillProcess(false);//可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop的时候杀死这个进程,默认不杀死
    option.SetIgnoreCacheException(false);//可选,默认false,设置是否收集CRASH信息,默认收集
    option.setEnableSimulateGps(false);//可选,默认false,设置是否需要过滤GPS仿真结果,默认需要
    MyApplication.getmLocationClient().setLocOption(option);
}
 
Example 17
Source File: BaiduMapFragment.java    From BmapLite with GNU General Public License v3.0 5 votes vote down vote up
public void initLocationSdk() {
    // 定位初始化
    mLocClient = new LocationClient(getActivity());
    mLocClient.registerLocationListener(this);
    LocationClientOption option = new LocationClientOption();
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
    option.setCoorType("gcj02");
    option.setOpenGps(true);
    option.setScanSpan(1000);
    option.setIsNeedAltitude(true);
    option.setIsNeedAddress(false);

    mLocClient.setLocOption(option);

    MyLocationConfiguration configuration = new MyLocationConfiguration(MyLocationConfiguration.LocationMode.NORMAL, true, null);
    mBaiduMap.setMyLocationConfiguration(configuration);

    mLocClient.start();

    try {
        LocationManager locManager = (LocationManager) getActivity().getSystemService(Context.LOCATION_SERVICE);
        if (!locManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
            onMessage(getResources().getString(R.string.gps_enabled_false));
        }
    } catch (Exception e) {
        e.printStackTrace();
    }


}
 
Example 18
Source File: MainActivity.java    From MoveMapLocation with Apache License 2.0 4 votes vote down vote up
private void initView() {
    mMapView = (MapView) findViewById(R.id.main_bdmap);
    mBaiduMap = mMapView.getMap();

    poisLL = (ListView) findViewById(R.id.main_pois);

    topRL = (RelativeLayout) findViewById(R.id.main_top_RL);

    searchAddress = (EditText) findViewById(R.id.main_search_address);

    searchPois = (ListView) findViewById(R.id.main_search_pois);

    //定义地图状态
    MapStatus mMapStatus = new MapStatus.Builder().zoom(18).build();
    MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mMapStatus);
    //改变地图状态
    mBaiduMap.setMapStatus(mMapStatusUpdate);

    //地图状态改变相关监听
    mBaiduMap.setOnMapStatusChangeListener(this);

    //开启定位图层
    mBaiduMap.setMyLocationEnabled(true);

    //定位图层显示方式
    mCurrentMode = MyLocationConfiguration.LocationMode.NORMAL;

    /**
     * 设置定位图层配置信息,只有先允许定位图层后设置定位图层配置信息才会生效
     * customMarker用户自定义定位图标
     * enableDirection是否允许显示方向信息
     * locationMode定位图层显示方式
     */
    mBaiduMap.setMyLocationConfigeration(new MyLocationConfiguration(mCurrentMode, true, null));

    //初始化定位
    mLocClient = new LocationClient(this);
    //注册定位监听
    mLocClient.registerLocationListener(this);

    //定位选项
    LocationClientOption option = new LocationClientOption();
    /**
     * coorType - 取值有3个:
     * 返回国测局经纬度坐标系:gcj02
     * 返回百度墨卡托坐标系 :bd09
     * 返回百度经纬度坐标系 :bd09ll
     */
    option.setCoorType("bd09ll");
    //设置是否需要地址信息,默认为无地址
    option.setIsNeedAddress(true);
    //设置是否需要返回位置语义化信息,可以在BDLocation.getLocationDescribe()中得到数据,ex:"在天安门附近", 可以用作地址信息的补充
    option.setIsNeedLocationDescribe(true);
    //设置是否需要返回位置POI信息,可以在BDLocation.getPoiList()中得到数据
    option.setIsNeedLocationPoiList(true);
    /**
     * 设置定位模式
     * Battery_Saving
     * 低功耗模式
     * Device_Sensors
     * 仅设备(Gps)模式
     * Hight_Accuracy
     * 高精度模式
     */
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);
    //设置是否打开gps进行定位
    option.setOpenGps(true);
    //设置扫描间隔,单位是毫秒 当<1000(1s)时,定时定位无效
    option.setScanSpan(1000);

    //设置 LocationClientOption
    mLocClient.setLocOption(option);

    //开始定位
    mLocClient.start();

}
 
Example 19
Source File: Activity_Location.java    From FoodOrdering with Apache License 2.0 4 votes vote down vote up
private void initLocation() {
    // 利用LocationClientOption类配置定位SDK参数
    option = new LocationClientOption();
    option.setLocationMode(LocationMode.Hight_Accuracy);
    // 可选,设置定位模式,默认高精度
    // LocationMode.Hight_Accuracy:高精度;
    // LocationMode. Battery_Saving:低功耗;
    // LocationMode. Device_Sensors:仅使用设备;

    option.setCoorType("bd09ll");
    // 可选,设置返回经纬度坐标类型,默认gcj02
    // gcj02:国测局坐标;
    // bd09ll:百度经纬度坐标;
    // bd09:百度墨卡托坐标;
    // 海外地区定位,无需设置坐标类型,统一返回wgs84类型坐标

    option.setOpenGps(true);
    // 可选,设置是否使用gps,默认false
    // 使用高精度和仅用设备两种定位模式的,参数必须设置为true

    option.setLocationNotify(true);
    // 可选,设置是否当GPS有效时按照1S/1次频率输出GPS结果,默认false

    option.setIgnoreKillProcess(true);
    // 可选,定位SDK内部是一个service,并放到了独立进程。
    // 设置是否在stop的时候杀死这个进程,默认(建议)不杀死,即setIgnoreKillProcess(true)

    option.SetIgnoreCacheException(false);
    // 可选,设置是否收集Crash信息,默认收集,即参数为false

    option.setEnableSimulateGps(false);
    // 可选,设置是否需要过滤GPS仿真结果,默认需要,即参数为false

    option.setIsNeedLocationDescribe(true);
    // 可选,是否需要位置描述信息,默认为不需要,即参数为false
    // 如果开发者需要获得当前点的位置信息,此处必须为true

    option.setIsNeedLocationPoiList(true);
    // 可选,是否需要周边POI信息,默认为不需要,即参数为false
    // 如果开发者需要获得周边POI信息,此处必须为true

    option.setIsNeedAddress(true);// 获取详细信息

    mLocationClient.setLocOption(option);
    // mLocationClient为第二步初始化过的LocationClient对象
    // 需将配置好的LocationClientOption对象,通过setLocOption方法传递给LocationClient对象使用
    // 更多LocationClientOption的配置,请参照类参考中LocationClientOption类的详细说明
}
 
Example 20
Source File: RouteService.java    From Mobike with Apache License 2.0 4 votes vote down vote up
private void initLocation() {
        mIconLocation = BitmapDescriptorFactory
                .fromResource(R.mipmap.location_marker);
        locationMode = MyLocationConfiguration.LocationMode.NORMAL;

        //定位服务的客户端。宿主程序在客户端声明此类,并调用,目前只支持在主线程中启动
        mlocationClient = new LocationClient(this);
        mlistener = new MylocationListener();
//        initMarkerClickEvent();
        //注册监听器
        mlocationClient.registerLocationListener(mlistener);
        //配置定位SDK各配置参数,比如定位模式、定位时间间隔、坐标系类型等
        LocationClientOption mOption = new LocationClientOption();
        //设置坐标类型
        mOption.setCoorType("bd09ll");
        //设置是否需要地址信息,默认为无地址
        mOption.setIsNeedAddress(true);
        //设置是否打开gps进行定位
        mOption.setOpenGps(true);
        //设置扫描间隔,单位是毫秒 当<1000(1s)时,定时定位无效
        int span = 10000;
        mOption.setScanSpan(span);
        //设置 LocationClientOption
        mlocationClient.setLocOption(mOption);

        //初始化图标,BitmapDescriptorFactory是bitmap 描述信息工厂类.
        mIconLocation = BitmapDescriptorFactory
                .fromResource(R.mipmap.location_marker);

        myOrientationListener = new MyOrientationListener(this);
        //通过接口回调来实现实时方向的改变
        myOrientationListener.setOnOrientationListener(new MyOrientationListener.OnOrientationListener() {
            @Override
            public void onOrientationChanged(float x) {
            }
        });
//        mSearch = RoutePlanSearch.newInstance();
//        mSearch.setOnGetRoutePlanResultListener(this);
//        //开启定位
//        mBaiduMap.setMyLocationEnabled(true);
        if (!mlocationClient.isStarted()) {
            mlocationClient.start();
        }
        myOrientationListener.start();
    }