太原网站建设培训/如何有效的推广宣传
前段时间做的一个应用中使用到了 google map 当时也是遇到了各种问题啊,今天有点时间就回忆一下。
首先是使用步骤了:
1.安装和更新Extras下的 Google Play services。
打开android sdk manager,查看是否安装了 google play services,没有的话,就先安装。然后将其导入eclipse,file->import->android->Existing android code into workspace ,选择sdk安装目录下extras/google/google_play_services,然后确定,这时在Package Explorer中就会看到导入的项目
2.获取api key
下面主要说Debug的数字证书获取。
为了获取api key 我们要先得到SHA1 fingerprint,在CMD命令行下运行:keytool -list -v -keystore "C:\Users\xu duzhou\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android 命令,引号中为debug.keystore文件的位置,不知道的可以查看Window/Preferences/Android/Build
运行后得到结果如下:
其中 SHA1 后面的这一串十六进制的数字就是我们需要的了。
下面就要去注册appkey了,
使用Gmail登录 https://code.google.com/apis/console/
点击左侧的services 找到 Google Maps Android API v2 将其状态改为 On 如下图
然后点击左侧的APP access,在右侧的页面中点击Create New android key.. 参考下图
进入如下界面
在输入框中填写我们在上面获取到的SHA1值,注意结尾用“;”隔开然后输入项目包名。如下
11:B1:69:00:7D:F5:2D:B3:E0:03:67:87:5D:95:89:13:7F:A7:59:A1;com.test 然后点击 Create 生成key.得到如下的一个key
3.开始代码编写工作
将获取到的 api key 加入AndroidManifest.xml文件
<meta-dataandroid:name="com.google.android.maps.v2.API_KEY"android:value="your_api_key"/>
加入权限许可,将其中的com.example.mapdemo替换为自己的packagename.
<permissionandroid:name="com.example.mapdemo.permission.MAPS_RECEIVE"android:protectionLevel="signature"/><uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE"/>
加入其他的权限许可
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
加入OpenGL ES V2特性支持
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
加载地图 布局文件
<?xml version="1.0" encoding="utf-8"?>
<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
public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); }
}
在项目中将上面导入的google_play_services_lib加载进来