当前位置: 首页 > news >正文

Android集成Google Map

一、参考文档

API文档

链接

Google Map地址

https://console.cloud.google.com/google/maps-hosted/build?

Google Map SDK for Android

https://developers.google.com/maps/documentation/android-sdk?hl=zh-cn

Google Maps Platform 安全指南

https://developers.google.com/maps/api-security-best-practices?hl=zh-cn#restricting-api-keys

二、应用中引用 Google Map

1. 获取 API 密钥

  • 访问Google Cloud Console,创建一个新项目或选择一个现有项目。

  • 在侧边栏中选择 “API 与服务”>“凭据”,并点击 “创建凭据”>“API 密钥”。

  • 下载 JSON 格式的 API 密钥文件,并记下 API 密钥。

2. 获取 API 密钥

  • 打开项目的模块级build.gradle文件,在dependencies部分添加以下内容:

implementation 'com.google.android.gms:play-services-maps:18.0.2'

3. 配置 AndroidManifest.xml

  • 在AndroidManifest.xml文件中,添加必要的权限,如获取位置信息的权限:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
  • 在<application>标签中,添加 API 密钥配置:

<meta-dataandroid:name="com.google.android.geo.API_KEY"android:value="YOUR_API_KEY_HERE"/>
  • 确保将YOUR_API_KEY_HERE替换为实际获取的 API 密钥。

4. 在布局文件中添加地图组件

  • 可以选择添加MapView或SupportMapFragment。例如,添加SupportMapFragment到activity_main.xml中:

<fragmentandroid:id="@+id/map"android:name="com.google.android.gms.maps.SupportMapFragment"android:layout_width="match_parent"android:layout_height="match_parent"/>

5. 在 Activity 中初始化地图

import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.OnMapReadyCallback;
import com.google.android.gms.maps.SupportMapFragment;public class MainActivity extends AppCompatActivity implements OnMapReadyCallback {private GoogleMap mMap;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);mapFragment.getMapAsync(this);}@Overridepublic void onMapReady(GoogleMap googleMap) {mMap = googleMap;// 在这里可以设置地图的初始位置、缩放级别等LatLng location = new LatLng(-34, 151);mMap.addMarker(new MarkerOptions().position(location).title("Marker in Sydney"));mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(location, 10));}
}

如果需要显示用户当前位置,还需要在onMapReady方法中检查并请求位置权限,并启用位置追踪功能。

三、Google Maps Platform 安全指南

不受限制的 API 密钥来访问 Google Maps Platform 服务。这些密钥可能已公开,容易被滥用。当您从公共环境(例如网站或移动应用)加载 Google Maps Platform 服务时,必须设置适当的应用密钥限制,以确保您的密钥只能在您的应用环境中使用。

1. 为 API 密钥设置应用限制

  • 在 Google Cloud 控制台中,打开 Google Maps Platform 的“凭据”页面。

  • 选择您要设置限制的 API 密钥。

  • 在密钥限制下的“修改 API 密钥”页面中,选择设置应用限制。

  • YouTube配置教程: https://youtu.be/2_HZObVbe-g?si=l8I_maqYMXAGlJvm

  • Application restriction 下面选择 Android apps

  • ADD AN ITEM 填入你的 Android 应用包名(例如 com.example.myapp)以及 SHA-1 指纹

  • API restriction 下面选择 Restrict key,在 “API 限制” 中,仅勾选 Maps JavaScript API 和 Places API

http://www.dtcms.com/a/296864.html

相关文章:

  • 基于自适应控制算法的SVC与STATCOM联合优化
  • 如何在IEEE上检索文献|综述性文献
  • springboot 一键下载文件
  • Linux操作系统原理与应用
  • 河南萌新联赛2025第(二)场:河南农业大学
  • 使用Docker+Nginx部署电商平台项目(服务端+管理端+商城)
  • 基于STM32智能鱼缸监控投喂系统
  • Kubernetes 集群架构和Pod创建流程
  • 优选算法:移动零
  • 激光雷达的单播和广播模式介绍
  • 2025年海外短剧独立站开发:H5+PC端双平台技术实践与增长策略
  • 处理HTTP请求体:精通`@RequestBody`、`@RequestHeader`与`@CookieValue`
  • 计算机视觉技术剖析:轮廓检测、模板匹配及特征点匹配
  • SpringBoot框架简介
  • Windows本地部署DeepSeek
  • git更新内核补丁完整指南
  • 【C++】使用中值滤波算法过滤数据样本中的尖刺噪声
  • Java 并发容器:ConcurrentHashMap 笔记(JDK 1.8)
  • 01_FOC学习之先让电机转动起来
  • 双紫擒龙紫紫红黄安装使用攻略,2025通达信指标源码,擒龙追踪源码公式学习
  • 爬虫基础概念
  • 浏览器访问[http://www.taobao.com](http://www.taobao.com/),经历了怎样的过程。
  • DNS域名解析过程
  • 通达OA二次开发
  • Impact rating 影响等级定义(学习笔记)
  • YOLOv8 剪枝模型加载踩坑记:解决 YAML 覆盖剪枝结构的问题
  • 【JAVA】使用vosk实现windows实时语音转文字,解放双手
  • vs2019 创建MFC ActiveX的详细步骤
  • JS事件基础
  • ESP-NOW无线通信协议:物联网设备间的高效对话方式