百度地图总结第一篇--环境集成和Hello Baidu_Map实现_若兰明月的博客-程序员宝宝

技术标签: android开发  学习心得  百度地图  

前言:

之前一直想研究一下地图的集成和使用,无奈自己的真机不给面子,还有自己也没有太多的空余时间,前一阶段研究了一下,今天就来总结一下吧。闲话少说,直奔主题。

第一步:获取秘钥

  • 1、百度一下—-输入“百度地图api”
  • 2、登录自己的百度账号,选择开发—Android地图SDK –获取秘钥,详情看下图

    如果以上的配置好了,这个时候就会显示一个
  • 3、这个时候我们去下载sdk,(还是开发—Android地图SDK–相关下载–可以自定义,也可以一件下载),下载好的sdk解压如下(我这个是自定义的,可能有写jar包不一样,不过不影响的)
  • 4、接下来我们开始把jar包和.so库放到我们的应用当中。
  • 5、我们来看下AndroidMainfest.xml文件中的配置吧。
    • 1>需要的权限
      ** <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.WRITE_EXTERNAL_STORAGE"/>
      <uses-permission android:name="android.permission.WRITE_SETTINGS"/>**
  • 2>在
 <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="你申请的秘钥"/>

到这里,基本上集成工作已经完成了,接下来开始我们的Hello Baidu_Map吧。

Hello Baidu_Map:

其实官方文档写的很详细的,这里我就不多说了,直接上代码:
MyApplication.java:

package com.example.mylocation;

import android.app.Application;

import com.baidu.mapapi.SDKInitializer;

/**
 * Created by wuyinlei on 2016/3/1.
 */
public class MyApplication  extends Application{
    
    @Override
    public void onCreate() {
        super.onCreate();
        //初始化
        SDKInitializer.initialize(getApplicationContext());
    }
}

MainActivity.java:

package com.example.mylocation;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import com.baidu.mapapi.map.MapView;

public class MainActivity extends AppCompatActivity {
    

    private MapView mapView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mapView = (MapView) findViewById(R.id.mapView);
    }

    protected void onDestroy() {
        super.onDestroy();
        //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
        mapView.onDestroy();
    }
    @Override
    protected void onResume() {
        super.onResume();
        //在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理
        mapView.onResume();
    }
    @Override
    protected void onPause() {
        super.onPause();
        //在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理
        mapView.onPause();
    }

}

activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.mylocation.MainActivity">

   <com.baidu.mapapi.map.MapView
       android:id="@+id/mapView"
       android:layout_width="match_parent"
       android:layout_height="match_parent"></com.baidu.mapapi.map.MapView>
</LinearLayout>

这个时候来运行一下,看看现实的效果,和官方的是否一样。

好了,这一片就到这了,接下来还有其他的,打算今天总结完。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wuyinlei/article/details/50807641

智能推荐

pcDuino 刷系统-LiveSuit_weixin_33910434的博客-程序员宝宝

为什么80%的码农都做不了架构师?&gt;&gt;&gt; ...

Android中pendingIntent的深入理解_weixin_30672019的博客-程序员宝宝

Android中pendingIntent的深入理解 pendingIntent字面意义:等待的。未决定的Intent。要得到一个pendingIntent对象,用法类的静态方法getActivity(Context, int, Intent, int),getBroadcast(Context, int, Intent,...

程序猿的奋斗史(三十八)——大学断代史(二)——我与数据库的故事_weixin_30750335的博客-程序员宝宝

文/温国兵 惰性人皆有之,也算是人的一大天性。几日之前便构思好此文,怎奈每日杂事繁多。今日才提起笔,作下此文。本文谈谈我与数据库的故事。 说起和数据库结缘。还得从大一说起。大一刚開始接触C语言,每日就沉浸在无止境的代码中。在网上查资料的过程中,看到别人用C语言写了一个小型的图书操作程序,数据库採用的是SQL Server,执...

vuex的mutations-getters-actions异步_vuex getters 触发异步方法_AyayaOVO的博客-程序员宝宝

1、mutations(修改状态)(1)template中直接使用$store.commit( )触发// template&lt;button @click="$store.commit('ADD')"&gt;+&lt;/button&gt;// src/vuex/store.jsconst mutations = { // 状态变更函数 ADD (state) { state.count++; }}(2)利用mapMutations引入触发&l

Aix操作系统crontab报0481-079 Reached a symbol that is not expected_看不见阿唱的博客-程序员宝宝

Aix操作系统crontab报0481-079 Reached a symbol that is not expectedAix操作系统crontab报0481-079 Reached a symbol that is not expectedAix操作系统crontab报0481-079 Reached a symbol that is not expected#背景在IBM小型机(操作系统为Aix)上使用crontab定时任务时,编写内容为以下:*/10 * * * * sh /home/mon

随便推点

##C11_超勇小马的博客-程序员宝宝

autoauto的用法,可以根据变量值,推出变量类型,其中比较特殊的就是cosnt引用用法int main(){ const int a=10; auto x=a;// x int auto&amp; y=a; //auto就是const int &amp; 类型} 错误用法:auto&amp;y=a,u=a; //这个时候u就不能编译通过,必须是 auto&amp; y=a,&amp;u =a;c++真的需要对内存,cpu,缓存应...

linux6中怎么切换用户,linux中怎么从root用户切换到普通用户_三道杠林同学的博客-程序员宝宝

如果当前是root用户2113,那么5261切换成普通用户test用以下命令:[email protected]:~#su-test[sudo]passwordfortest:[email protected]:~$如果要切换4102回root用户,那么用以下命令:su或su-用户名1653root可以省略不写。切换回root用户时要输入root密码。一般直接输入exit命令来切换回root用户,这样就不用...

brother的PT-9800PCN标签打印机二次开发_brother打印机二次开发_radzhang的博客-程序员宝宝

本来想通过esc/p指令打印标签,但是无奈能找到的资料太少,而且打电话给客服,也没有sample可以提供参考,后来客服说使用template功能的话,打印很方便。于是下载手册学习了一下,先下载P-touch Editor软件,制作标签模板。制作的模板就是普通的标签,不需要连接数据库之类的,模板里有3个object,分别是文本1,文本2,条形码3。这个很关键,后面的代码传送数据,就是按这...

java.lang.NullPointerException] with root cause_98巨人的博客-程序员宝宝

SSM前后端提交数据时报此错问题相关出错代码如下一月 26, 2020 11:46:45 下午 org.apache.catalina.core.StandardWrapperValve invoke严重: Servlet.service() for servlet [springServlet] in context with path [] threw exception [Reques...

【总结】C/C++输入输出不完全总结(待续)_weixin_30455365的博客-程序员宝宝

1. C风格 FILE*, fwrite, fread语法为:#include&lt;cstdio&gt;或者#include&lt;stdio.h&gt;FILE* fd = fopen(&lt;文件名字符串&gt;,"&lt;参数&gt;");//文件名字符串的类型一般是字符串常量或者字符串数组 const char*//写到文件 从起始地址begin起,写入nu...

【字符编码】 简洁理解ANSI,UTF8,Unicode,ASCII编码的差别_ansi编码和utf-8_bandaoyu的博客-程序员宝宝

1. ASCII和ANSI编码ASCII:单字节内码 -- Single-Byte character sets (SBCS),能够支持256个字符编码. #一个字节表示表示一个字符 如 A 只需一个字节ANSI:双字节内码 -- Double-Byte character sets)(DBCS),能够支持65000个字符编码. #两个个字节表示表示一个字符 如 你 需......

推荐文章

热门文章

相关标签