Android Map新用法:MapFragment应用介绍

时间:2023-02-11 20:50:47 

1.MapView ,MapActivity 这种的局限在于,必须要继承MapActivity,否则无法使用MapView。纠结就在于此。但是,最新官网上已经弃用了这糟粕的MapActivity。

Version 1 of the Google Maps Android API as been officially deprecated as of December 3rd, 2012. This means that from March 3rd, 2013 you will no longer be able to request an API key for this version. No new features will be added to Google Maps Android API v1. However, apps using v1 will continue to work on devices. Existing and new developers are encouraged to use Google Maps Android API v2.

2.MapFragment 这种的局限在于,必须要安装Google Play Service ,也就是说必须是原生rom。而且sdk要在12以上。我蛋疼了。

3.WebView 貌似很轻松的集成进来,但没有实践就木有发言权。
第一种方式我先略过了。大家都知道。说第二种,第三种会了再补上
MapFragment是刚出的google官方包,要集成进来还是挺麻烦的。官网链接 https://developers.google.com/maps/documentation/android/start
首先要到google conlose 添加api access权限,拿到apikey,创建一个project ,然后到services里把Google Maps Android API v2打开,再到api access里把你的project的keystore的SHA1和包名填进去,拿到唯一的api key
打开sdk manager--在Extras里把Android Support Libaray 和 Google Play Services都安装,lib和samples都在sdk_path/extra/google/google_play_services下。导入../lib_project作为自己项目的libaray
这一步完了之后在manifest.xml文件里添加权限和api key。代码如下


<permission
android:name="com.example.permission.MAPS_RECEIVE"
android:protectionLevel="signature"/>


com.example替换成自己project的package


<uses-permission android:name="com.example.permission.MAPS_RECEIVE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<!--My Location-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<!--Maps API needs OpenGL ES2.0.-->
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>


放在application声明里


<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="appkey"/>


在layout xml里加入MapFragment声明


<fragment xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.MapFragment"/>


activity不变,extends Activity就可以了。 不需要继承MapActivity了。
注意,debug状态下是不可以显示地图的,一定要在正式签名下map才会显示出来。
install下应该就能看到map了

还有不懂的就多看看官方文档把,介绍的很清楚。以上只是方便我自己记忆。

标签:Map,MapFragment
0
投稿

猜你喜欢

  • 使用JSONObject生成和解析json的方法

    2022-06-15 11:13:15
  • Java回调函数与观察者模式实例代码

    2023-11-16 17:30:11
  • C# Web应用调试开启外部访问步骤解析

    2023-04-01 15:24:01
  • C语言 超详细总结讲解二叉树的概念与使用

    2023-11-08 20:24:56
  • Android仿支付宝手势密码解锁功能

    2023-02-14 09:06:46
  • Scala数据库连接池的简单实现

    2023-07-14 14:19:37
  • Spring 自动装配的二义性实例解析

    2021-12-16 00:37:55
  • Java Document生成和解析XML操作

    2021-11-10 13:17:46
  • Java concurrency之非公平锁_动力节点Java学院整理

    2022-07-31 22:04:37
  • Spring Boot中如何使用Swagger详解

    2023-09-27 18:13:58
  • C# Socket 发送&接收&返回 简单应用实例

    2022-09-18 20:08:20
  • java 使用Scanner类接收从控制台输入的数据方式

    2023-10-23 08:54:57
  • Java中DecimalFormat用法及符号含义

    2023-05-04 04:31:14
  • flutter实现发送验证码功能

    2023-07-05 19:03:12
  • Android开发笔记之:复写按钮方法

    2023-01-18 05:44:12
  • IntelliJ IDEA2022.3 springboot 热部署含静态文件(最新推荐)

    2023-07-07 10:41:58
  • Springcloud Config配置中心使用与相关介绍

    2021-07-13 05:15:17
  • Android实现串口通信

    2023-03-06 18:13:10
  • C# Partial:分部方法和分部类代码实例

    2022-04-07 11:28:26
  • Android自定义相机Camera实现手动对焦的方法示例

    2022-08-23 14:45:11
  • asp之家 软件编程 m.aspxhome.com