• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android百度地图API集成一《基础地图》,集成百度地图api

Android百度地图API集成一《基础地图》,集成百度地图api

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android 百度地图api,百度地图api,百度地图api 首页,百度地图api定位,百度地图api教程等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android百度地图API集成一《基础地图》,集成百度地图api


  在使用百度地图API集成百度地图时,碰到了一些坑,特开此贴记录。。。

  直接开始代码

  1.新建一个工程

  建议使用AS!如果使用ES的话,会出现一个java.lang.NoClassDefFoundError: com.baidu.location.LocationClient 这种错误,在网上百度了半天时间,大都是同样的一些答案,而且都解决不了问题!(这也是我很郁闷的一件事,为什么有些没用的东西,有些人还疯狂的转来转去。。。)所以,最终我还是选择使用了AS。

  2.进入百度地图首页

  1)没有账号的话,申请一个百度账号

  2)下载百度地图示例代码,并解压(下载时可能会下载失败,没办法,多下几次吧。。。)

        

    解压如下

        

 

 

  3.根据官方文档Android地图SDK,集成基础的地图页面

    

 

    1)获取密钥

      * 点击获取密钥

       

 

 

      * 填写信息

       

    

       应用名称(在工程的value >> String.xml >> app_name)

       SHA1值:命令行窗口 >> keytool -list -v -keystore FilePath (FilePath:C盘 >> 用户 >> .android >> debug.keystore)

          

          

 

          注意:如果运行报错   203:校验码错误

             解决方法:1.将运行后的.apk文件,复制出来,后缀名更改为zip,并解压

                    

                  2.命令行窗口 >> keytool -printcert -file FilePath (FilePath:如上图)

                    

                  3.拿到这个SHA1值,最好是去重新到百度地图开放平台上重新创建一次应用,获得一个新的密钥(记得在AndroidManifest.xml中修改)

 

      包名:AndroidManifest.xml中

  

      * 得到一个密钥

       

     2) 配置

      * 导入jar包,并引用

       

 

      * 在build.gradle  >> android  中插入下面代码  

 sourceSets {
        main {
            jniLibs.srcDirs = ['libs']
        }
    }

  

      * 在application中添加开发密钥

<meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="开发者 key" />     <!-- 这个开发者key,修改成我们上面创建应用获得的密钥即可 -->

      * 添加所需权限

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<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.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS" />

      * 在布局xml文件中添加地图控件

1 <com.baidu.mapapi.map.MapView  
2     android:id="@+id/bmapView"  
3     android:layout_width="fill_parent"  
4     android:layout_height="fill_parent"  
5     android:clickable="true" />

 

      * 在应用程序创建时初始化 SDK引用的Context 全局变量,管理地图生命周期

public class MainActivity extends Activity {  
    MapView mMapView = null;  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);   
        //在使用SDK各组件之前初始化context信息,传入ApplicationContext  
        //注意该方法要再setContentView方法之前实现  
        SDKInitializer.initialize(getApplicationContext());  
        setContentView(R.layout.activity_main);  
        //获取地图控件引用  
        mMapView = (MapView) findViewById(R.id.bmapView);  
    }  
    @Override  
    protected void onDestroy() {  
        super.onDestroy();  
        //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理  
        mMapView.onDestroy();  
    }  
    @Override  
    protected void onResume() {  
        super.onResume();  
        //在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理  
        mMapView.onResume();  
        }  
    @Override  
    protected void onPause() {  
        super.onPause();  
        //在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理  
        mMapView.onPause();  
        }  
    }

 

   

      完成以上步骤后,运行程序,即可在您的应用中显示如下地图:

      android_dev2.jpg

 

 

 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android百度地图API集成三《搜索》,android《搜索》
  • Android百度地图API集成一《基础地图》,集成百度地图api
  • Android_LIFE帮(基于最新百度地图API的开源项目)

相关文章

  • 2017-05-26Java入门(二)——果然断更的都是要受惩罚的。。。,java受惩罚
  • 2017-05-26Android 一个改善的okHttp封装库,androidokhttp
  • 2017-05-26Android网络编程(一)HTTP协议原理
  • 2017-05-26用树莓派实现对话机器人
  • 2017-05-26RadioButton与CheckBox,radiobutton
  • 2017-05-26onTouch和onTouchEvent,ontouch
  • 2017-05-26Android 系统版本&amp;API对照表,android系统版本
  • 2017-05-26深入了解Volley如何执行一个Request的流程
  • 2017-05-26compileDebugJavaWithJavac,compiledebugjava
  • 2017-05-26Linux内核系列—10.操作系统开发之内核HelloWorld,linuxhelloworld

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • android 通过uri获取bitmap图片并压缩,
    • Android系统的“程序异常退出”,android退出
    • java.lang.NoSuchFieldError: org.apache.http.message.BasicLineFormatter.INSTANCE,apachemessagequeue
    • Android中Action Bar的使用
    • 关于TabLayout的使用 ,自定义了一个框架。。。 以后写底部菜单就可以直接作为依赖库 ,不用麻烦了,tablayout框架
    • cordova开发自定义插件
    • androd 获得wifi列表,androdwifi列表
    • Android Drawable的9种子类 介绍
    • Android提权漏洞CVE-2014-7920&amp;CVE-2014-7921分析,android提权漏洞
    • Android 正则表达式验证手机号、姓名(包含少数民族)、身份证号,android正则表达式

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有