基于Android的大学生生活小助手设计与开发(9)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

基于Android的大学生生活小助手设计与开发(9)


            double lon = bdLocation.getLongitude();
            String detailAddress = bdLocation.getAddrStr();// 详情的地址信息
            String city = bdLocation.getCity();
            String cityCode = bdLocation.getCityCode();

            String info = city + "   " + cityCode
                    + lat + "  " + lon + "   " + detailAddress;
            showToast(info);

            MyLocationData myLocationData = new MyLocationData.Builder()
                    .latitude(lat)
                    .longitude(lon)
                    .accuracy(bdLocation.getRadius())// 显示的精度
                    .build();
            // 设置定位到坐标数据
            mBaiduMap.setMyLocationData(myLocationData);
        }
    });

}

private void initLocationClientOption() {
    // 设置定位的参数
    LocationClientOption option = new LocationClientOption();
    option.setCoorType("bd09ll");    // 设置坐标系
    option.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy);    // 定位模式,精度最高
    option.setScanSpan(5000000);    // 设置定位刷新频率:5s刷新一次位置
    option.setIsNeedAddress(true); // 是否返回详情的地址信息
    mLocationClient.setLocOption(option);
}

private void beginLocation() {
    mLocationClient.start();}

2 附近信息
由定位信息,可以查询到所在点周围的服务、交通或者旅游胜地等情况。附近信息如图5.4所示:

图5.4 附近信息图
主要实现代码如下所示:
private void initSearch() {
    // 初始化搜索对象
    mPoiSearch = PoiSearch.newInstance();
    // 设置监听器,接收搜索结果数据
    mPoiSearch.setOnGetPoiSearchResultListener(new OnGetPoiSearchResultListener() {

        @Override // 获取搜索列表数据(多条)
        public void onGetPoiResult(PoiResult result) {
            if (result == null || result.error == SearchResult.ERRORNO.RESULT_NOT_FOUND) {
                showToast("未搜索到数据");
                return;
            }

            String info = getPoiResultInfo(result); (责任编辑:qin)