多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > 互聯(lián)網(wǎng) > 【百度地圖SDK】實現(xiàn)最簡單的定位功能(無地圖界面)

【百度地圖SDK】實現(xiàn)最簡單的定位功能(無地圖界面)

來源:程序員人生   發(fā)布時間:2014-09-18 06:40:23 閱讀次數(shù):3465次

在最近的項目中,需要實現(xiàn)無地圖界面的定位功能,定位用戶所在的城市,因此,本篇文章,主要介紹如何使用百度地圖SDK實現(xiàn)無導航界面的定位功能。

1.申請百度開發(fā)者賬戶

2.創(chuàng)建應(yīng)用,獲取key

如下圖所示

3.下載SDK文件,并導入至我們的工程

下面是我的測試項目的工程結(jié)構(gòu)

因此我這里只需要定位,不需要百度地圖的其他功能,比如導航等等,所以只導入定位相關(guān)的SDK即可。

4.配置權(quán)限和編寫代碼

具體配置過程,還請參考百度的API說明

地址:http://developer.baidu.com/map/index.php?title=android-locsdk/guide/v4-2

首先是主文件

MainActivity.java

package com.example.justlocation; 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; public class MainActivity extends Activity { private TextView tv; // 定位客戶端類 public LocationClient mLocationClient = null; // 定位監(jiān)聽器類 public BDLocationListener myListener = new MyLocationListener(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.actitity_main); tv = (TextView) findViewById(R.id.tv); // 初始化 mLocationClient = new LocationClient(getApplicationContext()); // 設(shè)置定位參數(shù) LocationClientOption option = new LocationClientOption(); option.setOpenGps(true); // 打開GPRS option.setCoorType("bd09ll");// 返回的定位結(jié)果是百度經(jīng)緯度,默認值gcj02 option.setScanSpan(5000); // 設(shè)置發(fā)起定位請求的間隔時間為5000ms // 設(shè)置獲取地址信息 option.setIsNeedAddress(true); mLocationClient.setLocOption(option); // 注冊監(jiān)聽函數(shù) mLocationClient.registerLocationListener(myListener); // 調(diào)用此方法開始定位 mLocationClient.start(); } /** * 定位成功之后的回調(diào)函數(shù) * * @author zhaokaiqiang * */ public class MyLocationListener implements BDLocationListener { @Override public void onReceiveLocation(BDLocation location) { if (location == null) return; StringBuffer sb = new StringBuffer(256); sb.append("時間 : "); sb.append(location.getTime()); sb.append(" 返回碼 : "); sb.append(location.getLocType()); sb.append(" 緯度 : "); sb.append(location.getLatitude()); sb.append(" 經(jīng)度 : "); sb.append(location.getLongitude()); sb.append(" 半徑 : "); sb.append(location.getRadius()); sb.append(" 省 : "); sb.append(location.getProvince()); sb.append(" 市 : "); sb.append(location.getCity()); if (location.getLocType() == BDLocation.TypeGpsLocation) { sb.append(" 速度 : "); sb.append(location.getSpeed()); sb.append(" 衛(wèi)星數(shù) : "); sb.append(location.getSatelliteNumber()); } tv.setText(tv.getText() + " " + sb.toString()); } } }

配置文件

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.justlocation" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" /> <!-- 這個權(quán)限用于進行網(wǎng)絡(luò)定位 --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" > </uses-permission> <!-- 這個權(quán)限用于訪問GPS定位 --> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" > </uses-permission> <!-- 用于訪問wifi網(wǎng)絡(luò)信息,wifi信息會用于進行網(wǎng)絡(luò)定位 --> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" > </uses-permission> <!-- 獲取運營商信息,用于支持提供運營商信息相關(guān)的接口 --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" > </uses-permission> <!-- 這個權(quán)限用于獲取wifi的獲取權(quán)限,wifi信息會用來進行網(wǎng)絡(luò)定位 --> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" > </uses-permission> <!-- 用于讀取手機當前的狀態(tài) --> <uses-permission android:name="android.permission.READ_PHONE_STATE" > </uses-permission> <!-- 寫入擴展存儲,向擴展卡寫入數(shù)據(jù),用于寫入離線定位數(shù)據(jù) --> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" > </uses-permission> <!-- 訪問網(wǎng)絡(luò),網(wǎng)絡(luò)定位需要上網(wǎng) --> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" > </uses-permission> <!-- 允許應(yīng)用讀取低級別的系統(tǒng)日志文件 --> <uses-permission android:name="android.permission.READ_LOGS" > </uses-permission> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="ngTqhh1a0SF0PnzFfEc853W7" /> <activity android:name="com.example.justlocation.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" > </service> </application> </manifest>

運行效果就不上圖了,因為在真機上,不好截圖。

有需要源程序的留郵箱。

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 亚洲精品蜜桃久久久久久 | 激情老妇xxx | 欧美 日韩 亚洲 中文字幕 一区 | 欧美性猛片xxxxⅹ免费 | 日韩欧美亚洲国产 | 亚洲色图欧美色 | 日产精品久久久一区二区 | 国产精品第二页 | 欧美激情一区二区 | 亚洲午夜久久久久中文字幕久 | 久久久久国产一级毛片高清片 | 成人无高清96免费 | 欧美一级日韩一级亚洲一级 | 在线观看欧洲成人免费视频 | 在线欧美日韩精品一区二区 | 日本特黄一级 | 最近中文字幕完整在线看一 | 在线精品福利 | 免费操人视频 | 中国性猛交xxxx乱大交 | 日本不卡一二三 | 亚洲黄色免费网址 | 最近最新中文字幕大全高清6 | 日本国产亚洲 | 亚洲天堂高清 | 亚洲欧美综合另类图片小说区 | 伊人久久大香线蕉精品哪里 | japanesefree高清日本护士 | 欧美一区二区三区免费 | 春意影院午夜免费入口 | 四虎必出精品亚洲高清 | 日韩亚州 | 老司机午夜精品网站在线观看 | 亚洲最大色视频 | 亚洲国产欧美日韩 | 国产一区日韩二区欧美三 | 欧美性精品 | 日本在线视频网 | 国产三级视频在线 | 日本做人爱免费视频 | 婷婷在线成人免费观看搜索 |