现在的地图API很多,我就从百度地图开始了,为了方面自己以后回顾,我会把所有学到的东西记录下来,下面是学习记录:

要使用百度地图首先得申请一个KEY,可以到这里申请(需要注册一个百度账号),申请完之后将从官方下载的Lib导入自己的项目,我导入两个jar包:baidumapapi_v2_1_2.jar、locSDK_3.1.jar、armeabi文件夹

申请key点击:http://developer.baidu.com/map/android-mobile-apply-key.htm

百度地图有三大核心类:

(一)BMapManger:获取地图引擎的管理类

(二)MapView :你所能看到的View

(三)MapController :用来对MapView进行一些操作,如放大,缩小等。。。

首先上效果图,然后是demo的代码,注释写在代码中

MainActivity.java

public class MainActivity extends Activity {

private BMapManager manager;

private MapView mapView;

private MapController controller;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

// 验证key

checkKey();

setContentView(R.layout.activity_main);

initView();

}

private void initView() {

mapView = (MapView) findViewById(R.id.mapView);

//添加放大和缩小按钮

mapView.setBuiltInZoomControls(true);

controller = mapView.getController();

//设置缩放级别[3-19]

controller.setZoom(12);

}

private void checkKey() {

manager = new BMapManager(getApplicationContext());

manager.init(ConstantValue.KEY, new MKGeneralListener() {

// 验证网络后回调

@Override

public void onGetNetworkState(int iError) {

if (iError == MKEvent.ERROR_PERMISSION_DENIED) {

// 验证失败

}

}

// 验证key后回调

@Override

public void onGetPermissionState(int iError) {

if (iError == MKEvent.ERROR_NETWORK_CONNECT) {

// 网络连接异常

}

}

});

}

@Override

protected void onDestroy() {

mapView.destroy();

super.onDestroy();

}

@Override

protected void onPause() {

mapView.onPause();

super.onPause();

}

@Override

protected void onResume() {

mapView.onResume();

super.onResume();

}

}这里有两点要说明下:

1.key的验证要在View视图初始化之前,因为view视图中包含百度的MapView控件,如果顺序倒了,则会报异常。

2.onDestroy()、onPause()、onResume()调用者三个方法是为了让mapView跟Activity进行绑定,因为一些bug的原因,如果不绑定他们俩的生命周期,则在按返回键,重新回到地图上的时候,地图的显示会异常,大家可以试着把三个方法注释掉看看效果。

下面顺便贴上布局代码:

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent" >

android:id="@+id/mapView"

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

Demo源码不上传了,顺便把需要的权限贴上了:

一些常用的功能:

int latitude = (int) (39.929 * 1E6);// 纬度

int longtitude = (int) (116.397 * 1E6);// 经度

private GeoPoint geoPoint = new GeoPoint(latitude, longtitude);

controller.setCenter(geoPoint);// 设置中心点

// controller.animateTo(geoPoint);// 平移

// controller.zoomIn();// 放大一级

// controller.zoomOut();// 缩小一级

// int mapRotation = mapView.getMapRotation();//获取旋转前的角度

// mapRotation += 30; //范围[0,360]

// controller.setRotation(mapRotation);

初识百度地图API的代码先到着,接着继续学习它的其他有趣的API

启动另外的一个应用程序的Activity(三种方式)

第一种(我自己写的):之前在网上看来一些,很多不是我要的可以启动另外一个应用程序的主Activity.//这些代码是启动另外的一个应用程序的主Activity

反编译APK文件的方法

步骤一:下载所需的工具,一共三个:三个工具打包下载地址:http://download.csdn.net/detail/vipzjyno1/7025729;工具介绍:1、apktool:可以提取出所用图片和布

Android打造通用的下拉刷新组件

还记得上一篇blog的内容吗?如果不记得建议先去了解一下,Android事件处理全面剖析,因为下拉刷新需要用到手势的处理,而上一篇文章中,对事件处理

android应用 百度地图,Android学习之百度地图API的应用(一)相关推荐

  1. Android学习-- 基于位置的服务 LBS(基于百度地图Android SDK)--定位SDK

    原文:Android学习-- 基于位置的服务 LBS(基于百度地图Android SDK)--定位SDK 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.ne ...

  2. 30.Android之百度地图简单学习

    今天用了下百度地图,简单写了一个例子,记录下. 一.申请AK(API Key) 要想使用百度地图sdk,就必须申请一个百度地图的api key.申请流程挺简单的. 首先注册成为百度的开发者,然后打开h ...

  3. Android百度室内图,深入学习百度地图Android SDK v4.0.0【第六关】室内地图

    百度地图居然推出了室内地图,那不是可以看看女神的家.你想多了,目前室内地图只支持大型购物商场,机场,火车站,医院等,覆盖了全国大概600个大型购物中心,继续增加中.目前用处不大,但也不错啊,去一些商场 ...

  4. android 地图雷达,深入学习百度地图Android SDK v4.0.0【第七关】周边雷达

    本来想学习一下Andriod Wear的开发,但是买不起Wear啊!直接跳过,开始学习周边雷达地图部分!这个功能非常有用,能知道你周围和你使用相同软件的人,牛郎织女一人安装一个,再也不用去鹊桥相会了, ...

  5. 仿百度地图 android,仿百度地图街景实现

    使用过百度地图的同学知道,它有个街景功能,可以看到许多地方的实景.这里就其街景内容的实现,进行下学习. 在百度地图SDK的官网上可以看到,百度对开发者提供了很多相关的内容,方便我们进行学习.关于SDK ...

  6. Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图

    2019独角兽企业重金招聘Python工程师标准>>> 最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地图入手,其实他们的用法都差不 ...

  7. 【Android】3.0 第3章 百度地图及其应用--预备知识

    分类:C#.Android.VS2015.百度地图应用: 创建日期:2016-02-04 一.概述 这一章先来点有意思的百度地图应用示例,然后再分章详细介绍用C#开发Android App的各种基本技 ...

  8. Android中应用百度地图API开发地图APP实例-显示百度地图

    场景 效果 在使用百度地图API之前需要先在百度地图开放平台中申请API_KEY http://lbsyun.baidu.com/index.php 申请API_KEY 登录百度开放平台后找到控制台下 ...

  9. 百度地图 Android SDK - 检索功能使用的简单演示样例

    百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ...

最新文章

  1. 数字转字符函数_C语言常用的几个工具函数
  2. 整数序列(牛客,线段树)
  3. Java,如果这是一个更好的世界
  4. 学习《css世界》笔记之多行文本实现垂直居中
  5. npm安装与卸载和cordova及ionic项目打包调试等相关命令总结归纳
  6. java怎么中断流_JAVA代码运行中断
  7. mysql 把一列转多行_Oralce 按分隔符把一列转成多行
  8. BP神经网络和支持向量机在R语言中的实现
  9. php-rabbitmq结合rabbitmq_delayed_message_exchange实现延时队列
  10. JAVA实现商品信息管理系统
  11. html embed页面无法播放视频,embed标签什么意思 手机无法播放网页上embed标签的视频...
  12. 基于GIS的二次开发
  13. 地铁 综合监控设备 及其所属子系统
  14. java代码楼房销售管理系统_secondHouse2 java二手房交易管理系统,针对房地产楼房销售的 Develop 272万源代码下载- www.pudn.com...
  15. 学计算机能把照片还原吗,要在计算机上恢复的1英寸照片的图像大小是多少? -恢复照片图像尺寸恢复...
  16. Gartner2021年网络技术成熟度曲线
  17. ubuntu 16.04 下安装搜狗输入法教程
  18. Arduino Uno 火焰传感器实验
  19. 使用oracle.jdbc.OracleDriver
  20. 怎么翻译Excel表格?两个方法可以轻松翻译Excel

热门文章

  1. Linux下命令行安装weblogic10.3.6
  2. Netflix Zuul与Nginx的性能对比
  3. jquery之图片懒加载(总结)
  4. 请指点一下,讨论也可以,顶也有分
  5. 清除webbrowser cookie/session的6种方法
  6. Selenium - 简介
  7. 重构学习1-重命名方法、类、参数等
  8. ASP.NET中PostBack和ViewState
  9. mysql having in_MySQL having子句
  10. django连接redis 集群(安装redis的相关包的时候亲测)