亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

(原創)不用百度地圖實現城市定位

2019-11-06 09:43:42
字體:
來源:轉載
供稿:網友

在實際開發中,我們會經常要獲取用戶所在的城市位置,一般來說,遇到這種需求大家第一時間都會想到集成第三方地圖來實現,比如百度或者高德。

但最近我在做一款個人項目時,卻突然想到,如果我只是需要用戶一個大概的位置,并不想獲取太多的信息,

為了這樣一個需求而去集成一個第三方是不是太浪費了?

于是就有了下面這些代碼。

不用集成第三方sdk,只是單純的獲取用戶所在的地理城市位置。

下面介紹主要步驟:

1:首先需要下面三個權限:

<uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.access_COARSE_LOCATION" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

分別是網絡權限和兩個獲取地理位置的權限,不懂的同學們可以自行Google

2初始化時判斷是否有權限,因為Android6.0對于獲取用戶的位置信息有了更多的要求,需要我們動態獲取權限

另外定義三個變量

PRivate String provider;//位置提供器private LocationManager locationManager;//位置服務private Location location;

//判斷是否有權限if (ContextCompat.checkSelfPermission(this,        Manifest.permission.ACCESS_COARSE_LOCATION)        != PackageManager.PERMISSION_GRANTED) {    //權限還沒有授予,需要在這里寫申請權限的代碼    ActivityCompat.requestPermissions(this,            new String[]{Manifest.permission.ACCESS_COARSE_LOCATION},            1);} else {    //獲取位置的方法    dingWei();}

3判斷是否動態獲取權限

//判斷是否動態獲取權限@Overridepublic void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {    if (requestCode == 1) {        if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {            dingWei();        } else {        }    }}

4獲取位置的三個方法 然后解析網絡請求框架獲取到的json即可

  private void dingWei() {        //權限已經被授予,在這里直接寫要執行的相應方法即可        //更改頭像        //調用相冊        locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);//獲得位置服務        provider = judgeProvider(locationManager);        if (provider != null) {//有位置提供器的情況            //為了壓制getLastKnownLocation方法的警告            if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {                return;            }            location = locationManager.getLastKnownLocation(provider);            if (location != null) {                getLocation(location);//得到當前經緯度并開啟線程去反向地理編碼            } else {                //暫時無法獲得當前位置            }        } else {            //不存在位置提供器的情況        }    }    /**     * 得到當前經緯度并開啟線程去反向地理編碼     */    public void getLocation(Location location) {        String latitude = location.getLatitude() + "";        String longitude = location.getLongitude() + "";        Log.d("print", "getLocation: ---->" + latitude + " " + longitude);        String url = "http://maps.google.cn/maps/api/geocode/json?latlng=" + latitude + "," + longitude + "&sensor=true,language=zh-CN";//        這里是網絡請求(我使用的是自己封裝的請求框架,你可換成你自己的網絡請求框架,請求上面這個url即可)        Log.d("print", "地址是:" + url);        new DownUtil().setOnDownListener(this).downJSON(url);    }    /**     * 判斷是否有可用的內容提供器     *     * @return 不存在返回null     */    private String judgeProvider(LocationManager locationManager) {        List<String> prodiverlist = locationManager.getProviders(true);        if (prodiverlist.contains(LocationManager.NETWORK_PROVIDER)) {            return LocationManager.NETWORK_PROVIDER;        } else if (prodiverlist.contains(LocationManager.GPS_PROVIDER)) {            return LocationManager.GPS_PROVIDER;        } else {            Toast.makeText(MainActivity.this, "沒有可用的位置提供器,請手動打開定位權限", Toast.LENGTH_SHORT).show();        }        return null;    }


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲成年人影院在线| 国产不卡一区二区在线播放| 欧美日韩国产一区中文午夜| 精品福利樱桃av导航| 国产ts一区二区| 欧美高清性猛交| 久久久久久尹人网香蕉| 欧美精品一区在线播放| 欧美激情第1页| 欧美wwwxxxx| 色综合天天综合网国产成人网| 亚洲欧美三级在线| 久久久久久久久久av| 亚洲成色999久久网站| 日韩精品在线电影| 日韩在线一区二区三区免费视频| 亚洲美女视频网站| 亚洲国产黄色片| 国产精品99导航| 亚洲国产精品va在看黑人| 欧美成人在线免费视频| 91亚洲精品视频| 亚洲va国产va天堂va久久| 精品人伦一区二区三区蜜桃免费| 欧美国产亚洲精品久久久8v| 亚洲国产另类 国产精品国产免费| 日韩av中文字幕在线免费观看| 成人做爰www免费看视频网站| 国产精品一区二区三区毛片淫片| 精品国产1区2区| 日韩在线欧美在线| 成人免费视频在线观看超级碰| 欧美激情一区二区久久久| 最新国产精品拍自在线播放| 日日噜噜噜夜夜爽亚洲精品| 欧美另类在线观看| 国产精品女主播视频| 国产69精品99久久久久久宅男| 136fldh精品导航福利| 欧美xxxx18性欧美| 亚洲色图在线观看| 国产成人精品一区二区三区| 国语对白做受69| 亚洲午夜未删减在线观看| 久久69精品久久久久久久电影好| 久久精品国产91精品亚洲| 久热在线中文字幕色999舞| 97久久精品人搡人人玩| 欧美性猛交xxxxx免费看| 91av在线播放视频| 日本中文字幕成人| 国产精品一区二区电影| 日本最新高清不卡中文字幕| 国产精品福利在线观看网址| 日韩激情在线视频| 福利一区视频在线观看| 成人精品一区二区三区电影黑人| 欧美日韩美女在线| 精品国产老师黑色丝袜高跟鞋| 国产精品入口福利| 色偷偷av一区二区三区乱| 国产视频福利一区| 日韩一区二区福利| 精品亚洲精品福利线在观看| 青青草精品毛片| 欧美最猛黑人xxxx黑人猛叫黄| 亚洲精品少妇网址| 乱亲女秽乱长久久久| 国产suv精品一区二区三区88区| 全色精品综合影院| 亚洲日韩中文字幕| 日韩中文理论片| 在线看福利67194| 国产精品久久久久久久久久尿| 日本成人在线视频网址| 日韩中文综合网| 日韩网站在线观看| 91精品视频大全| 亚洲精品电影在线| 欧美大肥婆大肥bbbbb| 清纯唯美日韩制服另类| 国产亚洲在线播放| 亚洲自拍偷拍色图| 色综合伊人色综合网站| 亚洲成人网在线观看| 欧美日韩一区二区免费在线观看| 日韩欧美国产一区二区| 欧美高清理论片| 欧美激情国产高清| 2021久久精品国产99国产精品| 九九久久精品一区| 久久久精品国产亚洲| 亚洲精品电影久久久| 欧美激情免费观看| 国产成人精品在线| 国产欧美日韩专区发布| 国产精品91在线| 欧美黄色成人网| 久久视频在线免费观看| 尤物精品国产第一福利三区| 色妞久久福利网| 久色乳综合思思在线视频| 97视频在线观看播放| 日韩人体视频一二区| 欧美精品久久久久久久久久| 欧美国产日韩中文字幕在线| 亚洲欧美日韩一区二区三区在线| 亚洲免费成人av电影| 免费91麻豆精品国产自产在线观看| 亚洲aⅴ男人的天堂在线观看| 91精品久久久久久久久不口人| 久久久久久久久久久免费精品| 亚洲欧美日本另类| 国产精品久久久| 日韩精品在线看| 欧美巨乳美女视频| 亚洲欧美一区二区激情| 国产欧美一区二区白浆黑人| 欧美日韩午夜激情| 国产精品亚洲第一区| 91精品久久久久久久久不口人| 亚洲精品在线看| 欧美激情高清视频| 国产精品久久久久久久久久久久| 69久久夜色精品国产69乱青草| 97碰碰碰免费色视频| 中文字幕精品在线视频| 97视频免费在线看| 亚洲国产美女久久久久| 欧美视频一区二区三区…| 欧美日韩一区免费| 久久久国产一区| 日韩视频―中文字幕| 亚洲精品www久久久久久广东| 久久久久久久久久久av| 欧美综合国产精品久久丁香| 亲爱的老师9免费观看全集电视剧| 在线视频欧美日韩| 狠狠做深爱婷婷久久综合一区| 国产精品亚洲激情| 在线电影欧美日韩一区二区私密| 日本一欧美一欧美一亚洲视频| 亚洲人成电影网站色www| 久久不射热爱视频精品| 国产成人av在线播放| 亚洲精品美女视频| 韩国精品久久久999| 日韩精品亚洲精品| 伊人久久久久久久久久| 久久99国产综合精品女同| 综合网日日天干夜夜久久| 欧美日韩国产综合新一区| 日本精品免费观看| 最近中文字幕日韩精品| 国产精品欧美激情在线播放| 久久69精品久久久久久国产越南| 国内揄拍国内精品| 97精品视频在线播放| 成人久久18免费网站图片| 亚洲欧美中文日韩在线v日本| 美日韩精品免费观看视频| 性欧美在线看片a免费观看| 欧美乱妇40p| 成人黄色av网|