第六章:AndroidStudio配置百度地图环境 ,图解,新手,初学者

前言:
模拟器不要版本太高,容易出很多意料之外的不是BUG的BUG。
这次的配置androidStudio百度地图环境就学到了,吐了,模拟器系统版本android11。

我也是一个刚学习百度地图的学生,被环境搞得一度崩溃,鼓捣了一天,在老师帮助下找到了原因。模拟器系统版本是Android11.同样项目在真机上运行就可以,模拟器就不行。都是泪啊。

原内容是在word文档中,如果觉得网页看博客不舒服,或者觉得太长,排版太丑,可以下载文档本地看,一步一截图的那种。
蓝奏云盘地址:https://yxmiaoyu.lanzous.com/b01btdgxe
https://yxmiaoyu.lanzous.com/b01btdgxe

先放效果图,界面很丑,但是功能还是可以的,
在这里插入图片描述


百度地图简介

百度地图API是为开发者免费提供 的一套基于百度地图服务的应用接 口,包括JavaScript API、Web服务 API、Android SDK、iOS SDK、定 位SDK、车联网API、LBS云等多种 开发工具与服务,提供基本地图展 现、搜索、定位、逆/地理编码,适 用于PC端、移动端、路线规划、 LBS云存储与检索等功能服务器等多 种设备,多种操作系统下的地图应 用开发。

使用地图需要先向百度申请,就是key(密钥)

Android地图SDK

基于 Android 4.0及以上版本设备的应用程序接口。

功能

地图 	POI检索 	地理编码 	线路规划 	地图覆盖物 	
定位 	离线地图	调启百度地图 	周边雷达 	LBS云 	
特色功能	 个性化地图 	室内图 	Android Wear

Android定位SDK

为 Android移动端应用提供的一套简单易 用的LBS定位服务接口,专注于为广大开 发者提供最好的综合定位服务

百度地图Android定位SDK提供GPS,基站,Wi-Fi等 多种定位方式

LBS(全称Location Based Services)可以理解 为移动定位服务

Android鹰眼轨迹Android SDK (了解)

设备轨迹追踪与显示

Android导航SDK (了解)

Android HUD SDK (了解)

夜间投影导航

Android全景SDK(了解)

下面开始配置百度地图环境(AndroidStudio)

准备1:SDK下载

百度地图 Android SDK 开发资源下载平台 
http://lbsyun.baidu.com/index.php?title =androidsdk/sdkandev-download

百度地图 Android SDK 开发资源下载平台
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
下载后
在这里插入图片描述
选择因为是刚学习,功能要求少,所以先选择基础的jar包解压,别的以后在运用。

在这里插入图片描述

下面开始正式安装环境。

1. 新建工程

我的工程名字为MyBaiduMap3

(第三次尝试才成功,尴尬😅)

2. 导包

复制6个文件到项目中。
切换project视图,复制粘贴即可。

在这里插入图片描述

在这里插入图片描述

开始导包,上面解压复制的六个文件中有一个是jar包,单纯复制无法正常使用,需要导入工程才行。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
效果
在这里插入图片描述
效果
在这里插入图片描述

创建本地密钥

用过本地密钥获得SHA1进而向百度申请密钥。
这是两个密钥,前面是你自己搞得,本地的,后面那个是百度给你的,网络的,不一样。
具体过程大家可以百度,比我说的好很多,我就不献丑误导大家了。
大致过程如下
在这里插入图片描述

创建本地密钥

在这里插入图片描述

使用上面建好的密钥

账号密码都是:12345678

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
file目录下,在androidStudio最左上角哪里。

在这里插入图片描述

在这里插入图片描述
输入你创建本地密钥是设置的信息
在这里插入图片描述
效果
在这里插入图片描述

查询SHA1

windous +r 输入cmd
先找到你生成的本地密匙路径
进入路径
输入 keytool -v -list -keystore xxxx
xxxx是你的本地密钥的名字,全称,我的就是BaiduMapKey.jks

在这里插入图片描述
复制SHA1

申请百度密钥

在这里插入图片描述
在这里插入图片描述

点击确认,在出现的页面中复制AK值;
在这里插入图片描述

打开应用,添加ak

在这里插入图片描述

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

添加一个我也不知道是啥的东西

注意位置,别添加错了。
在这里插入图片描述

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

添加权限

在这里插入图片描述

定位什么的权限
    <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" />


		解决高版本联网权限	
        android:usesCleartextTraffic="true">

编写布局

<?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=".MainActivity">

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

</LinearLayout>

MainActivity

package com.example.mybaidumap;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;

import com.baidu.mapapi.SDKInitializer;
import com.baidu.mapapi.map.MapView;

public class MainActivity extends AppCompatActivity {
    //添加地图控件属性
    private MapView mvMap;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //初始化地图服务,必须要在setContentView方法调用之前-------
        SDKInitializer.initialize(getApplicationContext());
        setContentView(R.layout.activity_main);

        //获取地图控件
        mvMap = findViewById(R.id.mvMap);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        //调用地图销毁的方法
        mvMap.onDestroy();
        Log.i("lww", "onDestroy");
    }

    @Override
    protected void onResume() {
        super.onResume();
        mvMap.onResume();
        Log.i("lww", "onResume");
    }

    @Override
    protected void onPause() {
        super.onPause();
        mvMap.onPause();
        Log.i("lww", "onPause");
    }

}

链接真机或者安卓版本10的模拟器

运行,OK了。
完结撒花在这里插入图片描述

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值