zoukankan      html  css  js  c++  java
  • Android Map新用法:MapFragment应用

    MapView ,MapActivity 这种的局限在于,必须要继承MapActivity,否则无法使用MapView,但是,MapFragment 这种的局限在于,必须要安装Google Play Service ,也就是说必须是原生rom。而且sdk要在12以上

    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"/> 
  • 相关阅读:
    ASP.NET MVC 入门9、Action Filter 与 内置的Filter实现(介绍) 【转】
    一个建议,看看大家的意见。
    发现不错的文章,推!
    有个小问题,大家一起研究。
    逼不得已,这个我确实不会,昨办?
    MSN Message6.2 的小BUG
    在IE7浏览器中切换成以资源管理器方式
    手机罗盘(指南针)校准方法
    G13/ Wildfire S/A510e link2SD教程,干净清洁的安装程序到内存卡
    HTC G13电池怎么鉴别真伪
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4553899.html
Copyright © 2011-2022 走看看