网络定位-能定位到国家省份市区县街道

代码改变世界

直接上代码

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/428105.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vim功能键整理(图片来自mooc)

1.一般模式 2.编辑模式 3.命令行模式

rpn风险等级评价准则_2019一建经济学习重点:技术方案经济效果评价

2019年一级建造师备考正在进行中&#xff0c;你是在看教材还是在刷题呢&#xff1f;今天优路教育小编是来送干货的&#xff0c;教材太厚&#xff0c;知识点太乱&#xff0c;那就来看这里的考点总结吧。接下来小编带大家一起学习《工程经济》第一章工程经济。一建《工程经济》第…

Android编程之页面跳转整理(只涉及关键步骤,需要有一定的基础,小白学习勿入)

自我学习篇: 1.创建你需要的页面&#xff0c;这里演示以创建一个主页和一个 子页进行跳转作为参考。 2.编写layout&#xff0c;这里仅需要创建一个按钮即可&#xff0c;至于样式美观大家可以根据需要进行自我调整。 这里需要注意的是对id的修改&#xff0c;自己应该起一个相对…

电脑无法打开特定网页_监理检测网校电脑微信无法打开公路试验检测视频课程的处理方法...

电脑版微信安装后&#xff0c;通过微信中置顶的监理检测网校公众号&#xff0c;菜单进入网校课程有的人会出现课程打不开&#xff0c;直接打开的是浏览器&#xff0c;无法学习&#xff0c;处理方法如下&#xff1a;电脑上打开微信&#xff0c;左下角三横线图标点开 &#xff0c…

PHP和MySQL Web开发pdf

下载地址&#xff1a;网盘下载内容简介 本书将PHP开发与MySQL应用相结合&#xff0c;分别对PHP和MySQL做了深入浅出的分析&#xff0c;不仅介绍PHP和MySQL的一般概念&#xff0c;而且对PHP和MySQL的Web应用做了较全面的阐述&#xff0c;并包括几个经典且实用的例子。作者…

python stringstrip方法详解_Python 基础知识全篇-字符串(Strings)

字符串是字符的集合。单引号和双引号字符串可以包含在单引号或双引号中。my_string "This is a double-quoted string."my_string This is a single-quoted string.这种灵活的方式可以让我们在字符串中包含引号。quote "Linus Torvalds once said, Any progr…

Linux环境下创建运行.java文件

1.下载安装jdk。 一条yum指令就可以搞定了,也可以自己从windows上共享文件进行操作&#xff0c;有些复杂&#xff0c;这里不做详细描述。 以后熟练了&#xff0c;可能进行二更。 yum install java-1.8.0-openjdk* -y 这里需要注意是需要你转换到自己的root权限的 su root 截图…

JAVA核心技术卷2:高级特征(原书第8版)

下载地址&#xff1a;网盘下载内容简介 Java领域最有影响力和价值的著作之一&#xff0c;由拥有20多年教学与研究经验的资深Java技术专家撰写&#xff08;获Jolt大奖&#xff09;&#xff0c;与《Java编程思想》齐名&#xff0c;10余年全球畅销不衰&#xff0c;广受好评。…

python处理teradata数据库_Python脚本连接Teradata数据库

Connect Teradata frompythonBaseon Linux Ubuntu with python2.7参考网络搜索结果&#xff0c;具体出处不记得了&#xff0c;结合自身实践总结。以下操作为Linux环境&#xff0c;其他环境请自行调整。(中英文结合是因为这个总结最初也是受惠于歪果仁的分享)1, Install python …

Linux下的Shell编程之Helloworld.sh看过来

1.编写HelloWorld.sh vim HelloWorld.sh 2.按下i进行编辑 里面的代码如下: #!bin/sh echo "hello world!" 然后Esc退出编辑模式 然后:wq保存并退出vim 小白看参考: 小白vim指令学习 3.运行HelloWorld.sh&#xff08;方式有两种&#xff09; a.sh HelloWorld.sh …

python数据录入和分析_hive+python数据分析入门

本文作者系 leanote 的核心开发者, 多谢关注leanote. leanote官网, leanote github为什么要使用hivepython来分析数据举个例子,当年没有数据库的时候, 人们通过编程来操作文件系统, 这相当于我们编写mapreduce来分析数据.后来有了数据库, 没人再操作文件系统了(除非有其它需求)…

Linux下删除非空文件目录

删除目录大家第一反应应该和我一样都是rmdir 但今天有一个目录里因为配置有好多文件直接烦死&#xff0c;不能rmdir直接删除&#xff0c;要是使用这个指令还要先用cd指令转换到该目录下一个个删除&#xff0c;实在是有点麻烦&#xff0c;最后终于还是找到了正确的打开方式。 …

python不同版本共存_多版本Python共存的配置方法

同一台PC中&#xff0c;如果同时安装Python2和Python3环境&#xff0c;会在执行python命令时出现错误&#xff0c;操作系统会找到默认的配置进行执行。怎么样才能让python2和python3一起工作又互相不影响呢。但是由于工作需要&#xff0c;我们的个人PC上可能需要多个python版本…

jdk1.8配置(自我速成)

1.JAVA_HOME 变量名字:JAVA_HOME 变量值:找到自己安装jdk的目录即可&#xff0c;有的教程路径到了bin&#xff0c;但其实到不到都可以。 2.CLASSPATH 变量名:CLASSPATH 变量值&#xff1a; .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 注意这里那个英文的点点不要少了…

Java 8 中的 Streams API 详解

Java 8 中的 Streams API 详解转载于:https://www.cnblogs.com/LionheartCGJ/p/8488825.html

Eclipse export导出war包报错(Module name is invalid.)

出于设计模式的作业过程中遇到的问题&#xff0c;老师要求代码文件最后大家要导出war包&#xff0c;前两次还好好的&#xff0c;今天突然报错 这里来说一下原因&#xff0c;也就是web项目可以导出war包&#xff0c;而java项目是不可以的&#xff0c;下面的操作其实本质上就是给…

车载电脑中控软件_数字图书馆智能化系统集成-ipad中控软件

随着社会发展进入数字化时代&#xff0c;智慧展厅一词&#xff0c;也渐渐的让我们熟悉&#xff0c;在打造智慧展厅的同时&#xff0c;“中控系统软件”功不可没&#xff0c;中控系统软件的可能大家对这个产品也不是特别了解&#xff0c;但接下来&#xff0c;鼎深小编所要介绍的…

Tool:Visual Studio

ylbtech-Tool&#xff1a;Visual StudioMicrosoft Visual Studio&#xff08;简称VS&#xff09;是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集&#xff0c;它包括了整个软件生命周期中所需要的大部分工具&#xff0c;如UML工具、代码管控工具、集成开发环…

const的用法以及与define使用的区别

const使用于C语言中&#xff0c;用于定义常变量&#xff0c;即用 const 定义的变量的值是不允许改变的&#xff0c;即不允许给它重新赋值&#xff0c;即使是赋相同的值也不可以。 因此有的时候也称定义的为只读变量。 虽然 const 定义的是只读变量&#xff0c;就相当于是定义一…

[Poi2011]Tree Rotations线段树合并

整理一下线段树合并的思路&#xff0c;大体是给每个树上节点分配一个根编号建一棵log长的权值线段树&#xff0c;一开始树上只有这个树节点的节点权merge两个树节点的时候&#xff0c;对于当前合并的值域&#xff08;例如两棵线段树的表示1到n/2的节点&#xff09;&#xff0c;…