百度地图 显示准确的位置
来源:互联网 发布:淘宝上的平价汉服店 编辑:程序博客网 时间:2024/04/28 07:43
在应用上使用百度的定位,需要在百度开发者平台上创建应用,来得到自己的key。
怎么生成key呢?首先需要生成一个签名,然后用签名生成sha1,放到百度平台上就可生成key。
输入keytool -v -list -keystore +你的key的路径 回车
密匙口令即是你的密码
详细操作见百度上的提示 ,下面是可行的定位需要的步骤。
在百度上下载百度地图的sdk,其中的libs 放在项目中的libs:
libs下载地址:点击打开链接
这里强调一下,libs里面的so包最好全部复制到lib目录下,系统根据适配自动调取相应的。
下载demo:点击打开链接
android studio的话还需要在app下的build.gradle配置so,eclipse不用。
sourceSets { main { jniLibs.srcDirs = ['libs'] } }
所需要的权限:
<!-- 这个权限用于进行网络定位 --> <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>
<application ... <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" > </service> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="自己的key" /> ...</application>
MainActivity:
package zhangli.baidumapDemo;import android.app.Activity;import android.os.Bundle;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 Activity { private LocationClient mLocationClient = null; TextView text; String jiedao; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); text = (TextView) findViewById(R.id.Text); MyLocationListenner myListener = new MyLocationListenner(); mLocationClient = new LocationClient(this); LocationClientOption option = new LocationClientOption(); option.setIsNeedAddress(true); option.setAddrType("all"); option.setCoorType("bd09ll"); mLocationClient.setLocOption(option); mLocationClient.registerLocationListener(myListener); mLocationClient.start(); } @Override public void onDestroy() { mLocationClient.stop(); super.onDestroy(); } private class MyLocationListenner implements BDLocationListener { @Override public void onReceiveLocation(BDLocation location) { try { jiedao = location.getAddrStr(); Toast.makeText(getApplicationContext(), jiedao, Toast.LENGTH_LONG).show(); text.setText("目前位置:"+jiedao); } catch (Exception e) { e.printStackTrace(); } } }}
布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="zhangli.baidumapDemo.MainActivity" > <TextView android:id="@+id/Text" android:text="正在定位..." android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:gravity="center" android:ems="10"/></RelativeLayout>
效果图:
0 0
- 百度地图 显示准确的位置
- 百度地图嵌入弹出层,无法准确正确显示marker标记到中心位置的问题
- 关于百度地图显示自己的位置
- 使用百度地图 显示自己的位置
- Android百度地图显示附近的位置
- iOS 百度地图显示指定的位置
- 使用百度地图API,定位并显示自己的位置
- 百度地图api 实时显示 每个人的位置和头像
- 如何用百度地图api地图上显示自己位置以及数据库里的位置
- iframe引入百度地图显示企业位置
- iframe引入百度地图显示企业位置
- 百度地图默认标注显示位置
- 使用百度地图api功能显示位置
- 百度地图的经纬度位置
- android百度地图开发V4.5最新版(4)---显示自己的位置在地图上
- 用手机gps定位获得准确的百度地图经纬度
- 百度地图 使覆盖物显示在地图中心位置
- Android开发-百度地图API_v4.1.1-AndroidStudio(六)显示检索结果&定位&显示我的位置
- Unity3D 4.0新功能:Mecanim动画系统基础教程
- Hadoop Ubuntu安装过程
- MBProgressHUD的基本使用2
- 十四周 项目二-二叉树排序树中查找的路径
- Android---MVP设计模式中级(二)
- 百度地图 显示准确的位置
- FMDB&EGODatabase(数据持久化)
- DNS的TTL值
- 同步(实时)监听EditText
- 第十二周--数据结构--非连通图的遍历之二
- iOS如何在工程中使用第三方(网络)图片
- 第十四周 项目6 二叉排序树中查找的路径
- 第十四周--项目2二叉树排序树中查找的路径
- 1031. Hello World for U (20)