文档章节

android 开发之 百度地图的使用

我辈年轻1
 我辈年轻1
发布于 2016/11/03 19:22
字数 786
阅读 2
收藏 0

好久没写博客了,最近遇到个新需求 需要用到百度地图的基础地图,定位,理论上应该还会用到鹰眼的功能吧.具体还很难说.我现在

刚动工,就从头开始记录吧.

 

首先是先申请一个百度地图api的key 流程官网很详细我就不多说了.(linux 系统下android studio 获取SHA1:我的博客  http://www.cnblogs.com/wobeinianqing/p/5594694.html  ,官网也有介绍)

申请完了key以后下载好相关包(在开发那个tab下有个相关下载)

选择好需要的功能以后就可以下载了:

完成后解压出来一般是一个jar文件合几个对应不同cpu架构的文件夹内部是一堆.os文件

创建一个android 工程在文件的(progect视图) app/libs 文件下考入jar文件 然后选中jar包 右键选择add as library...

然后在 app/src/main/ 目录下创建 jniLibs 文件夹 拷入上面的几个文件夹

完成后目录结构如下:

下面就可以开始正式进入编程模式了!

可以参考百度地图api hello baidumap 部分

首先是activity_main.xml (引入MapView)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:context="com.zfls.findme.MainActivity"
    tools:showIn="@layout/app_bar_main">

    <com.baidu.mapapi.map.MapView
        android:id="@+id/bmapView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:clickable="true" />
</RelativeLayout>

MainActivity.java

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();  
  
        mMapView.onDestroy();  
    }  
    @Override  
    protected void onResume() {  
        super.onResume();  
        
        mMapView.onResume();  
        }  
    @Override  
    protected void onPause() {  
        super.onPause();  
        
        mMapView.onPause();  
        }  
    }

这样就已经可实现了地图的展示功能了.

下面为app添加必要权限

<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" />

添加自己的key

<meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="你的 key" />

整体效果:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.zfls.findme">

    <uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
    <!-- 这个权限用于进行网络定位 -->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <!-- 这个权限用于访问GPS定位 -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位 -->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <!-- 获取运营商信息,用于支持提供运营商信息相关的接口 -->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_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.INTERNET" />


    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="你的key" />
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name"
            android:theme="@style/AppTheme.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        
    </application>

</manifest>

下面插上手机run 一下体验下自己的地图吧!

啥?为啥中间是北京?下节我们来换掉它!

本文转载自:http://www.cnblogs.com/wobeinianqing/p/5594793.html

上一篇: php 文件操作
我辈年轻1
粉丝 1
博文 85
码字总数 0
作品 0
南京
程序员
私信 提问
分享17个老罗Android开发视频教程(免费下载)

分享17个老罗Android开发视频教程(免费下载) 第1集《老罗Android开发视频教程》android学习路线图介绍.avi 第2集《老罗Android开发视频教程》android系统框架的介绍.avi 第3集《老罗Andro...

邓剑彬
2012/12/01
2.3K
4
Android Studio 获取 sha1、MD5签名

APP开发过程中使用百度地图 API , 申请 KEY 的时候需要开发者提供SHA1 证书指纹数据, 用Eclipse 可以直接查看,但是 Android Studio却不能,这个时候我们需要以下几步操作既可: 1.打开jav...

chenyy1203
2018/06/28
0
0
Android 百度地图开发(一)--- 申请API Key和在项目中显示百度地图

最近自己想研究下地图,本来想研究google Map,但是申请API key比较坑爹,于是从百度地图入手,其实他们的用法都差不多,本篇文章就带领大家在自己的Android项目中加入百度地图的功能,接下来...

等待流星
2013/12/10
0
1
Xamarin.Android 使用百度地图获取定位信息

最近做一个项目,web端使用百度地图,PDA使用手持机自带的GPS定位系统获取经纬度,然后再百度地图上显示该经纬度会有一定距离的差异,这里就像可乐的瓶子拧上雪碧的盖子,能拧的上却不美观。...

键盘演绎青春
2018/07/25
0
0
《老罗Android开发视频教程》老罗来交国庆的答卷了

  之前在博客园、开源中国、安卓巴士发表的《老罗将死,或者Android也将就换代,但是互联网的,共享,互助精神将永存》,计划出300集免费的、高质量的、全面的Android开发视频教程,得到了...

qixinghaitang
2012/10/09
0
2

没有更多内容

加载失败,请刷新页面

加载更多

枚举 创建/获取key,name,list

创建枚举 public enum MessageTypeEnum { // 类型:0.一般消息,1.公告消息,2交易消息,3.活动消息,4.其他消息 type_general("一般消息", "0"), type_ann("公告消息", "1")......

龘游戏人生龘
32分钟前
1
0
Linus 本尊来了!为什么 KubeCon 越来越火?

阿里妹导读: 从200人的小会议到3500 多位云原生和开源领域工程师齐聚一堂的大会,KubeCon 只用了四年,昨天,在KubeCon China 2019 上阿里巴巴宣布开源 OpenKruise,今天,Linus 本尊竟然现...

阿里云云栖社区
今天
4
0
五小时构建云原生电商平台 | KubeCon SOFAStack Workshop 详解

本文根据 KubeCon China 2019 同场活动 SOFAStack Cloud Native Workshop 内容整理, 文末包含文档、PPT 地址,欢迎试用和提出建议。 2019 年 6 月 25 日,在 KubeCon China 2019,全球知名开...

SOFAStack
今天
6
0
跨平台开发框架DevExtreme v19.1.4正式发布|附下载

DevExtreme Complete Subscription是性能最优的 HTML5,CSS 和 JavaScript 移动、Web开发框架,可以直接在Visual Studio集成开发环境,构建iOS,Android,Tizen和Windows Phone 8应用程序。D...

FILA6666
今天
2
0
数据库链接断开 Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

报错信息如下: Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failureThe last packet successfully received from the server was 97,130 mill......

为了美好的明天
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部