- 登录http://lbs.amap.com/,成为高德地图开发者
点击“控制台”->“创建新应用”这里面有一个难点——获取“安全码:SHA1”
下面讲述一种方法,供大家参考
在控制台,定位到 /.android下面cd .android
获取debug版本的安全码SHA1
keytool -list -v -keystore debug.keystore
然后提示输入密钥库口令:这里输入android
其截图如下:
获取正式版SHA1方式与上述相同(这里需要指向给app签名的keystore,密钥库口令为:keystore密码)。
3. 在项目中展示一张高德地图
- 添加展示高德地图需要的jar包
开发->Android 地图SDK->相关下载
- 给app添加key信息
在AndroidManifest文件application标签下添加key,如下图所示
<application
android:icon="@drawable/ic_launcher"
android:label="@string/demo_title" >
<meta-data
android:name="com.amap.api.v2.apikey"
android:value="您的key" />
- 添加相应的权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<service android:name="com.amap.api.location.APSService"></service>
- 在MainActivity中展示一张高德地图
其代码如下:
package com.hang.hellomapdemo;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import com.amap.api.maps.MapView;
public class MainActivity extends AppCompatActivity {
private MapView mapView;
private AMap aMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
mapView=new MapView(this);
setContentView(mapView);
aMap=mapView.getMap();
mapView.onCreate(savedInstanceState);
}
@Override
protected void onResume() {
super.onResume();
mapView.onResume();
}
@Override
protected void onPause() {
super.onPause();
mapView.onPause();
}
@Override
protected void onDestroy() {
super.onDestroy();
mapView.onDestroy();
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
mapView.onSaveInstanceState(outState);
}
}