百度地图学习(Ⅰ)-Android端地图的显示及简单应用
ps:(1.地图应用一定要在真机测试;
2.Design By:Android Stdio;
3.百度地图官方参考链接(http://developer.baidu.com/map/index.php?title=androidsdk);
4.如有不足,请指出,谢谢);
下面我们来研究百度地图:
【1】首先:在使用百度地图的时候需要得到百度地图官方提供的AK码,具体如何获得,请参考(http://developer.baidu.com/map/index.php?title=androidsdk/guide/key)
【2】得到AK码以后需要下载百度官方提供的jar包以及so文件,具体请参考(http://lbsyun.baidu.com/sdk/download?selected=mapsdk_basicmap,mapsdk_searchfunction,mapsdk_lbscloudsearch,mapsdk_calculationtool)
【3】得到jar包以及so文件后需要进行在项目中的加载:
eclipse的加载方式
------------------------------------------------华丽分割线---------------------------------------
小编使用的Android Stdio进行编写的,所以讲述一下as的加载jar包以及so文件:
【添加jar包】-
正如图片所看,首先应该把对应的jar包放到项目的libs文件夹下,然后需要在这个项目下的
,添加这条语句:
,否则你的jar包将无法使用
【添加so文件】-小编根据搜集资料,发现有这样一个方法,经测试可用,这个方法源自国外的Kyle Thielk的博客
在main文件夹下创建jinLibs,然后把armeabi复制到这个文件夹下面即可
【4】添加密钥配置权限
(添加密钥)
(配置权限)
以上代码参考(http://developer.baidu.com/map/index.php?title=androidsdk/guide/hellobaidumap)
【5】添加xml布局文件
<com.baidu.mapapi.map.MapView
android:id="@+id/bmapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" />
【6】书写java代码(代码实现【1.创建地图,2.显示卫星地图,3.显示实时路况】)
 public class MainActivity extends ActionBarActivity {
     private MapView mapView=null;
     private BaiduMap mBaiduMap=null;
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         /*
          *注意使用SDK各组件之前初始化Context信息,传入ApplicationContext
          *注意该方法要在setContentView之前实现
          */
         SDKInitializer.initialize(getApplicationContext());
         setContentView(R.layout.activity_main);
         initView();
     }
     private void initView() {
         mapView=(MapView)findViewById(R.id.bmapView);
         mBaiduMap=mapView.getMap(); //从容器中得到地图
         MapStatusUpdate msu= MapStatusUpdateFactory.zoomTo(15.0f);  //设置地图的起始标尺
         mBaiduMap.setMapStatus(msu);
     }
     @Override
     protected void onDestroy() {
         super.onDestroy();
         mapView.onDestroy();
     }
     @Override
     protected void onResume() {
         super.onResume();
         mapView.onResume();
     }
     @Override
     protected void onPause() {
         super.onPause();
         mapView.onPause();
     }
     /*
      *上下文菜单
      */
     @Override
     public boolean onCreateOptionsMenu(Menu menu) {
         // Inflate the menu; this adds items to the action bar if it is present.
         getMenuInflater().inflate(R.menu.menu_main, menu);
         return true;
     }
     /*
      *复写菜单选项的点击事件
      */
     @Override
     public boolean onOptionsItemSelected(MenuItem item) {
         switch (item.getItemId())
         {
             case R.id.id_map_common:
                 mBaiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);
                 break;
             case R.id.id_map_site:
                 mBaiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);
                 break;
             case R.id.id_map_traffic:
                 if(mBaiduMap.isTrafficEnabled()){
                     mBaiduMap.setTrafficEnabled(false);
                     item.setTitle("实时交通(Off)");
                 }else
                 {
                     mBaiduMap.setTrafficEnabled(true);
                     item.setTitle("实时交通(On)");
                 }
                 break;
         }
         return super.onOptionsItemSelected(item);
     }
 }
【7】书写menu_main.xml
<item android:id="@+id/id_map_common"
android:title="@string/map_common"
app:showAsAction="never" />
<item android:id="@+id/id_map_site"
android:title="@string/map_site"
app:showAsAction="never" />
<item android:id="@+id/id_map_traffic"
android:title="@string/map_traffic"
app:showAsAction="never" />
【8】书写string.xml
<string name="map_common">普通地图</string>
<string name="map_site">卫星地图</string>
<string name="map_traffic">实时交通(Off)</string>
【9】项目完成,效果图如下:




百度地图学习(Ⅰ)-Android端地图的显示及简单应用的更多相关文章
- Android端百度地图API使用详解
		百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口,通过该接口,可以轻松的访问百度服务和数据,构建功能丰富.交互性强的地图应用程序. 百度地图移动版A ... 
- 【转载】Android端百度地图API使用详解
		转载地址:http://www.cnblogs.com/rocomp/p/4994110.html 百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口 ... 
- 通过netty把百度地图API获取的地理位置从Android端发送到Java服务器端
		本篇记录我在实现时的思考过程,写给之后可能遇到困难的我自己也给到需要帮助的人. 写的比较浅显,见谅. 在写项目代码的时候,需要把Android端的位置信息传输到服务器端,通过Netty达到连续传输的效 ... 
- [android学习]__使用百度地图开放api编写地图定位app
		前言 在前面我已经记录关于如何使用百度地图api,以及如何配置相关的androidstudio配置了,接下来将记录如何使用百度地图api开发简单的地图定位apk,我将决定不定期持续更新本篇笔记,在每个 ... 
- H5端调起百度地图、腾讯地图app
		来自一个需求的总结: 在微信公众号中根据地图上的marker和label,或者搜索结果点击调起地图APP进行导航. 一开始是使用百度地图进行开发,后面转腾讯是因为微信不允许不是自家或者合作方的APP在 ... 
- Android百度地图开发03之地图控制 + 定位
		前两篇关于百度地图的blog写的是,一些基本图层的展示 和 覆盖物的添加+地理编码和反地理编码. 接下来,这篇blog主要说一些关于地图控制方面的内容和定位功能. 百度地图提供的关于地图的操作主要有: ... 
- 百度地图 Android SDK - 检索功能使用的简单演示样例
		百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ... 
- 百度地图在移动端下click无效的解决方案
		这是由于百度地图在移动端屏蔽了click事件,在网上找到一种方法,利用touchClick方法来模拟click事件,代码如下(需要JQ插件): //给jquery添加touchClick方法 (fun ... 
- Android Google 地图 API for Android
		从健康类 app Runkeeper 到游戏 app 精灵宝可梦,位置服务对现代 app 来说越来越重要. 在本文中,我们将创建一个 app,名字就叫做 City Guide.这个 app 允许用户搜 ... 
随机推荐
- 通用权限管理系统数据字典 V3.9 版本,欢迎开发个各种业务系统的朋友们,参考表结构
			C#.NET通用权限管理系统组件数据字典 导 航 ◇ (01) BaseItemDetails ◇ (02) BaseItems ◇ (03) BaseLog ◇ (04) BaseMessage ... 
- JS添加DOM元素CSS权重BUG
			修改删除table的时候,比如拆分合并单元格,合并全部TR中的某个TD后在拆分还原,即使直接在td标签中设置了td的高宽属性,当td在css文件中设置为宽度auto的时候,不能显示出TD来,显示TD宽 ... 
- NOI2018准备Day1
			今天刷基础题,字符串实在不想刷,做了20到多维数组题.老师说要10分钟一道,然而我加上整理差不多半小时一道吧... 总感觉自己效率比别人低了好多好多好多倍. 基础不牢,地动山摇,最近还是好好稳固基础题 ... 
- Apache Shiro 使用手册(一)Shiro架构介绍 - kdboy - ITeye技术网站
			转载 原文地址 http://kdboy.iteye.com/blog/1154644 一.什么是Shiro Apache Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理 ... 
- PRML读书会第七章 Sparse Kernel Machines(支持向量机, support vector machine ,KKT条件,RVM)
			主讲人 网神 (新浪微博: @豆角茄子麻酱凉面) 网神(66707180) 18:59:22 大家好,今天一起交流下PRML第7章.第六章核函数里提到,有一类机器学习算法,不是对参数做点估计或求其分 ... 
- Hashtable  Dictionary List 谁效率更高
			一 前言 很少接触HashTable晚上回来简单看了看,然后做一些增加和移除的操作,就想和List 与 Dictionary比较下存数据与取数据的差距,然后便有了如下的一此测试, 当然我测的方法可能不 ... 
- SQLServer(MSSQL)、MySQL、SQLite、Access相互迁移转换工具 DB2DB v1.3
			最近公司有一个项目,需要把原来的系统从 MSSQL 升迁到阿里云RDS(MySQL)上面.为便于测试,所以需要把原来系统的所有数据表以及测试数据转换到 MySQL 上面.在百度上找了很多方法,有通过微 ... 
- C#中的Where和Lambda表达式
			1 2 3 4 5 6 7 8 9 10 11 List<string> listString = new List<string>(); listString.Add(&qu ... 
- 我的第一个DMZ方案实践
			方案提出的初衷:外网需要定时和不定时推送数据到内网服务器(只要求数据到达内网,没有要求直接连接到内网) 为什么不是直连到内网:每个人第一想到的是不安全,是的,没错不安全.内网的应用和外网的应用最明显的 ... 
- android 随记 ContentValues
			ContentValues 和HashTable类似都是一种存储的机制 但是两者最大的区别就在于,contenvalues只能存储基本类型的数据,像string,int之类的,不能存储对象这种东西,而 ... 
