Google Maps Android API v2初体验

转自:http://blog.csdn.net/tqtuuuu/article/details/8522380

主要参考:

https://developers.google.com/maps/documentation/android/start?hl=zh-CN#the_google_maps_api_key


通过如下几个步骤完成:

1. 安装Google Play服务 SDK, 通过SDK Manager完成,在Extras下,安装完成以后,该SDK/extras目录下将会出现如下目录:google/google_play_services。


2. 获取访问Google Map的APIKey,需要到Google APIs Console完成,方法如下:

2.1 打开https://code.google.com/apis/console,然后创建一个Project,并且勾选使Google Maps Android API v2生效

2.2 在上述console左侧选择API Access,然后Create New Android Key...,在弹出的对话框中输入"SHA-key;packagename".我输入的实例如下:

27:E2:4C:7C:24:3C:71:F4:EC:FB:9E:91:A9:5B:6A:9D:74:47:A1:12;com.example.exampleproject

2.3 其中SHA-key是在user/.android目录下执行如下命令得到的:

keytool -list -v -keystore debug.keystore

最后生成的apikey如下所示: 

Simple API Access

Use API keys to identify your project when you do not need to access user data. Learn more

Key for Android apps (with certificates)  
API key:
AIzaSyDz3aQ-yKDfoaoC5uY5klK3PYQjegRo74A
Android apps:
27:E2:4C:7C:24:3C:71:F4:EC:FB:9E:91:A9:5B:6A:9D:74:47:A1:12;com.example.joey
Activated on: Jan 19, 2013 7:36 PM
Activated by: joey**@gmail.com – you

3. 将sdk\extras\google\google_play_services\libproject\google-play-services_lib项目作为Android library Project导入Eclipse。

3.1选择File > Import > Android > Existing Android Code Into Workspace and click Next.

3.2 选择Browse..., 输入 <android-sdk-folder>/extras/google/google_play_services/libproject/google-play-services_lib, 然后单击Finish.

3.3 单击google-play-services_lib项目右键,选择Properties->Android,在Project Build Target选项卡下选择Google APIs(而不是Android 4.2),在Library选项卡下勾选Is Library。如下图所示。




4. 创建普通的Android应用程序项目,Activity及Layout文件和Manifest文件内容分别如下所示:

4.1 Activity文件

[plain]  view plain copy print ?
  1. public class MapViewActivity extends Activity {  
  2.   
  3.     @Override  
  4.     protected void onCreate(Bundle savedInstanceState) {  
  5.         super.onCreate(savedInstanceState);  
  6.   
  7.         setContentView(R.layout.activity_map);  
  8.           
  9.     }  
  10. }  

4.2 Layout文件:

[plain]  view plain copy print ?
  1. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  2.     xmlns:tools="http://schemas.android.com/tools"  
  3.     android:layout_width="match_parent"  
  4.     android:layout_height="match_parent"  
  5.     android:background="#313849">  
  6.   
  7.     <fragment xmlns:android="http://schemas.android.com/apk/res/android"  
  8.           android:id="@+id/map"  
  9.           android:layout_width="match_parent"  
  10.           android:layout_height="match_parent"  
  11.           class="com.google.android.gms.maps.MapFragment"/>  
  12. </RelativeLayout>  
4.3 Manifest文件:

[plain]  view plain copy print ?
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <manifest xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     package="com.example.exampleproject"  
  4.     android:versionCode="1"  
  5.     android:versionName="1.0" >  
  6.   
  7.     <uses-sdk  
  8.         android:minSdkVersion="8"  
  9.         android:targetSdkVersion="17" />  
  10.   
  11.     <application  
  12.         android:allowBackup="true"  
  13.         android:icon="@drawable/ic_launcher"  
  14.         android:label="@string/app_name"  
  15.         android:theme="@style/AppTheme"  
  16.         android:debuggable="true" >  
  17.           
  18.         <span style="color:#ff6666;"><meta-data  
  19.             android:name="com.google.android.maps.v2.API_KEY"  
  20.             android:value="AIzaSyDz3aQ-yKDfoaoC5uY5klK3PYQjegRo74A"/>    //第2布中获取的API key</span>  
  21.           
  22.         <activity android:name=".MapViewActivity" android:label="@string/app_name" >  
  23.             <intent-filter>  
  24.                 <action android:name="android.intent.action.MAIN" />  
  25.                 <category android:name="android.intent.category.LAUNCHER" />  
  26.             </intent-filter>   
  27.           
  28.         </activity>  
  29.   
  30.         <span style="color:#ff6666;"><uses-library android:name="com.google.android.maps"/></span>  
  31.           
  32.     </application>  
  33.       
  34.   
  35.     <span style="color:#ff6666;"><uses-feature android:glEsVersion="0x00020000" android:required="true"/></span>  
  36.       
  37.     <<span style="color:#ff6666;">permission</span> android:name="com.example.exampleproject.permission.MAPS_RECEIVE" android:protectionLevel="signature"/>  
  38.         <<span style="color:#ff6666;">uses-permission</span> android:name="com.example.exampleproject.permission.MAPS_RECEIVE"/>    
  39.         <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>  
  40.     <uses-permission android:name="android.permission.INTERNET"/>  
  41.     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>  
  42.     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>  
  43.         <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>  
  44.   
  45. </manifest>  

5. 配置Android应用程序的Project Build Target为Google APIs,参见步骤3,不要勾选Is Library选项,否则运行时会出现Android library projects cannot be launched错误。


6. 需要在系统中安装的软件包括:Google Map、Google Play、Google Play服务,不然,应用会显示一个按钮(名称为:获取Google Play服务)而不是应该显示的地图。安装完上述软件后,应该会成功显示地图。PS:我出现这个问题的原因,是因为刚刷了MIUI 4.0的系统,这个系统太坑爹了,把Google的所有软件都卸完了。


真机测试,运行成功


1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值