由于项目需求缘故,最近在学习Android地图的开发,所以就记录一下学习过程。最近都会陆续更新啦。目前使用百度地图API的挺多的,所以就先以它为基础学习一些地图的调用。

一、AK的申请

与web开发不一样,Android的地图项目开发需要申请一个AK才能调用地图功能。

1.注册成为百度开发者,正常填入信息即可。

2.申请密钥:

  在http://lbsyun.baidu.com/apiconsole/key中创建应用,现在百度只允许一个key对应一个应用。

  (1)应用名称:与自己创建项目名一致。

  (2)应用类型:Android SDK

  (3)启动服务:建议全部勾选,方便项目后续继续添加功能。

  (4)数字签名(SHA1):

  在Android studio上有命令行,直接启动,进入C:\用户名\.android,输入keytool -list -v -keystore debug.keystore(密钥库命令是android),会出现证书指纹,将SHA1的值粘贴过去即可。

  由于百度推荐的这个方法出来的SHA1可能出现错误,百度论坛上许多人包括本人也出现SHA1值错误导致的AK匹对失败,在论坛上看到官方给出一个测试AK的app,它可以获取所有应用正确的SHA1和包名,我们可以把以前错误替换掉。这是网址:http://bbs.lbsyun.baidu.com/forum.php?mod=viewthread&tid=85103&extra=page%3D1

  (5)包名:Android studio里在app文件下的build.gradle,applicationId就是包名。

二、下载SDK开发包

1.在网址:http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download

一键下载会把jar包、so文件以及一些demo都包含,后面也比较方便查看。

2.接下来就是在android studio创建项目,过程就不说啦,建完后添加jar包和so文件

jar包:添加在libs文件下,并右击右击里选择add as library;

so文件:在main文件下新建jniLibs文件,将各种编译环境的so文件粘贴进去。

3.在AndroidManifest.xml 声明AK和权限

AK:

<application>
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="开发者 key" />
</application>

权限(算是比较齐全的权限):

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<uses-permission android:name="android.permission.READ_LOGS" />
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>

4.在布局文件中添加地图控件

<com.baidu.mapapi.map.MapView
android:id="@+id/bmapView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clickable="true">
</com.baidu.mapapi.map.MapView> 5.应用创建需要初始化SDK,引用全局变量:  

6.创建基础地图:

在主线程里面声明了控件引用就可以使用基础地图了,显示基本的地图信息。
mMapView = (MapView) findViewById(R.id.bmapView);
然后管理声明周期,在各个阶段同步地图的状态。
@Override
protected void onDestroy() {
super.onDestroy();
mMapView.onDestroy();
} @Override
protected void onResume() {
super.onResume();
mMapView.onResume();
} @Override
protected void onPause() {
super.onPause();
mMapView.onPause();
}


后面会陆续更新定位的获取,地图POI的检索和一些路线规划等等。

百度地图开发的学习(一)——配置环境&基础地图的更多相关文章

  1. 【百度地图开发之二】基于Fragment的地图框架的使用

    写在前面的话: [百度地图开发之二]基于Fragment的地图框架的使用(博客地址:http://blog.csdn.net/developer_jiangqq),转载请注明. Author:hmji ...

  2. oracle学习笔记——配置环境

    题记:最近再学oracle,于是按照这本经典的书<Oracle Database 9i/10g/11g编程艺术>来学习. 配置环境 如何正确建立SCOTT/TIGER演示模式 需要建立和运 ...

  3. Xamarin 学习笔记 - 配置环境(Windows & iOS)

    本文翻译自CodeProject文章:https://www.codeproject.com/Articles/1223980/Xamarin-Notes-Set-up-the-environment ...

  4. Java Web整合开发(附录1) - 安装配置环境

    1. Install JDK http://blog.csdn.net/sonnet123/article/details/9169741 Download JDK http://www.oracle ...

  5. jmeter的学习(配置环境)

    jmeter是一款开源工具.解压即可使用 前提要安装配置jdk.验证jdk是否安装配置成功.运行cmd输入“ java -version” 如上图所示.jdk安装配置成功:64位版本1.8 现在即可进 ...

  6. Android-Opencv开发(一)配置环境

    先去官网下载android-opencv http://opencv.org/.

  7. 嵌入式4412开发板学习知识-Linux系统基础知识

    1. 什么是Linux系统编程 Linux系统编程分为三个部分:系统调用.C库和C编译器. 系统调用系统编程的基础是系统调用,也结束于系统调用.在带有操作系统的嵌入式开发中,需要从操作系统申请一些服务 ...

  8. Android studio 百度地图开发(3)地图导航

    Android studio 百度地图开发(3)地图导航 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...

  9. Android studio 百度地图开发(2)地图定位

    Android studio 百度地图开发(2)地图定位 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...

随机推荐

  1. andriod手机签到应用服务器设计

    最近导师要求我和另一个同学开发一个手机上课签到应用,我负责客户端和服务器之间的通信架构编写和数据的存储 本人大学四年只用过汇编和C/C++,因此对andriod开发还是一窍不通,花了一个星期写出来了基 ...

  2. 数据可视化(5)--jqplot经典实例

    本来想把实例也写到上篇博客里,最后发现太长了,拆成两篇博客了. 实例来源于官方文档:http://www.jqplot.com/tests/ 这篇博客主要是翻译了官方文档关于经典实例的解说,并在相应代 ...

  3. github神器--Atom编辑器初体验

    Atom 1.0正式式版已经出来好几天,自从听说github出了这神器之后,一直想体验一吧,这两天终于体验上. 下载: https://atom.io/ 其实,我的网速还不错,但总是下载到一半就没网速 ...

  4. elasticsearch配置

    配置文件详解1.0版 配置文件位于es根目录的config目录下面,有elasticsearch.yml和logging.yml两个配置,主配置文件是elasticsearch.yml,日志配置文件是 ...

  5. Gradle学习系列之十——自定义Plugin(本系列完)

    在本系列的上篇文章中,我们讲到了如何自定义Task类型,在本篇文章中,我们将讲到如何自定义Plugin. 请通过以下方式下载本系列文章的Github示例代码: git clone https://gi ...

  6. sprint2 项目部署+展示

    项目展示网址: http://160q49b998.51mypc.cn/ (注:所有用户密码都为123456,校内断网时访问不了)

  7. PHP 表单验证--安全性--小记

    HTML 表单数据进行适当的验证对于防范黑客和垃圾邮件很重要! -------------------------------------------------------------------- ...

  8. Winform开发框架之权限管理系统功能介绍

    权限管理系统的重要特性总结: 1) 高度集成的权限系统.独立模块,能快速整合使用.2) 符合权限的国际通用标准,基于RBAC(基于角色的访问控制)的角色权限控制.3) 多数据库架构支持,内置支持Sql ...

  9. sql:Oracle11g 表,视图,存储过程结构查询

    -- Oracle 11 G --20160921 涂聚文再次修改 --Geovin Du --GetTables SELECT owner, object_name, created FROM al ...

  10. 泛函编程(9)-异常处理-Option

    Option是一种新的数据类型.形象的来描述:Option就是一种特殊的List,都是把数据放在一个管子里:然后在管子内部对数据进行各种操作.所以Option的数据操作与List很相似.不同的是Opt ...