网络定位-能定位到国家省份市区县街道
生活随笔
收集整理的這篇文章主要介紹了
网络定位-能定位到国家省份市区县街道
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
代碼改變世界
直接上代碼
package com.example.baidu;import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast;import com.baidu.location.BDLocation; import com.baidu.location.BDLocationListener; import com.baidu.location.LocationClient; import com.baidu.location.LocationClientOption;public class MainActivity extends AppCompatActivity {private ImageView image;private TextView mTv = null;public LocationClient mLocationClient = null; //初始化LocationClient類public MyLocationListener myListener = new MyLocationListener();@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);//在使用SDK各組件之前初始化context信息,傳入ApplicationContext//聲明LocationClient類mLocationClient = new LocationClient(getApplicationContext());mLocationClient.registerLocationListener(myListener); //注冊監聽函數image=(ImageView)findViewById(R.id.image); //初始化圖片mTv = (TextView) findViewById(R.id.tv_loc_info); //初始化文本setLocationOption(); //定義setLocationOption()方法mLocationClient.start(); //執行定位}public class MyLocationListener implements BDLocationListener {@Overridepublic void onReceiveLocation(BDLocation location) {//將獲取的City賦值給txt/***1.國家:location.getCountry()* 2.城市:location.getCity()* 3.區域(例:天河區):location.getDistrict()* 4.地點(例:風信路):location.getStreet()* 5.詳細地址:location.getAddrStr()*/mTv.setText(location.getCity()+location.getDistrict()+location.getStreet());Toast.makeText(MainActivity.this,"網絡定位成功"+location.getDirection(),Toast.LENGTH_LONG).show();}public void onReceivePoi(BDLocation arg0) {}}//執行onDestroy()方法,停止定位@Overridepublic void onDestroy() {mLocationClient.stop();super.onDestroy();}//設置相關參數private void setLocationOption() {LocationClientOption option = new LocationClientOption();option.setOpenGps(true); //打開gpsoption.setAddrType("all");//返回定位結果包含地址信息option.setPriority(LocationClientOption.NetWorkFirst); // 設置網絡優先option.setPriority(LocationClientOption.GpsFirst); //gpsoption.disableCache(true);//禁止啟用緩存定位mLocationClient.setLocOption(option);}} ?AndroidManifest.xml <!-- 這個權限用于進行網絡定位--><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission><!-- 這個權限用于訪問GPS定位--><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission><!-- 用于訪問wifi網絡信息,wifi信息會用于進行網絡定位--><uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission><!-- 獲取運營商信息,用于支持提供運營商信息相關的接口--><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission><!-- 這個權限用于獲取wifi的獲取權限,wifi信息會用來進行網絡定位--><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" /><!-- SD卡讀取權限,用戶寫入離線定位數據--><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
?
其中BDLocation?location
1.國家:location.getCountry()2.城市:location.getCity()3.區域(例:天河區):location.getDistrict()4.地點(例:風信路):location.getStreet()5.詳細地址:location.getAddrStr()可以定位國家 城市 區域 地點
詳細地址就是所有包括國家的地址 例如:中國遼寧省大連市甘井子區任賢街
?
轉載于:https://www.cnblogs.com/shmilyGWT/p/8481955.html
總結
以上是生活随笔為你收集整理的网络定位-能定位到国家省份市区县街道的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 有限域f9的特征是多少_密码学数学基本第
- 下一篇: 有限域上乘法