高德基本地图的实现继承

来源:互联网 发布:网络零点旗舰店 编辑:程序博客网 时间:2024/05/16 20:27

接下来,给大家写一下高德基本地图的实现继承过程:



在高德开发平台(官网)上下载相关SDK和Demon


第一个和第二个都可以,第一个2D,3D相关内容都有,第二个下载就是自己选择了,这里新手推荐第一个下载。




下载后解压3DMap,会生成一个jar包,先导入工程中。接下来就要生成一个自己的key值,这个key值每个人都是不一样的,且,一个工程对应唯一的一个key值,

点击控制台。




应用管理中,创建自己的应用




这里就自己填写就行,点击创建,添加新key




这里主要讲一下如何获取SHA1,比较简单的一种方法,打开cmd窗口



在弹出的控制台窗口中输入 cd .android 定位到 .android 文件夹。


继续在控制台输入命令。

debug.keystore:命令为:keytool -list -v -keystore debug.keystore

自定义的 keystore:命令为:keytool -list -v -keystore apk的keystore



提示输入密钥库密码,编译器提供的debug keystore默认密码是 android,自定义签名文件的密码请自行填写。输入密钥后回车(如果没设置密码,可直接回车),此时可在控制台显示的信息中获取 SHA1 值,如下图所示:



这里就得到SHA1了,提交自己的key值就好了,

3D地图才需要添加so库,2D地图无需这一步骤。因为我们解压的文件是3D,所以创建新文件

在 main 目录下创建文件夹 jniLibs (如果有就不需要创建了),将下载文件的 armeabi 文件夹复制到这个目录下,如果已经有这个目录,将下载的 so 库复制到这个目录即可。如图所示: 


接下来就要在工程中写代码了:先配置权限:

[html] view plain copy
  1. <!--允许程序打开网络套接字-->  
  2.     <uses-permission android:name="android.permission.INTERNET" />  
  3.     <!--允许程序设置内置sd卡的写权限-->  
  4.     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
  5.     <!--允许程序获取网络状态-->  
  6.     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  
  7.     <!--允许程序访问WiFi网络信息-->  
  8.     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  
  9.     <!--允许程序读写手机状态和身份-->  
  10.     <uses-permission android:name="android.permission.READ_PHONE_STATE" />  
  11.     <!--用于进行网络定位-->  
  12.     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>  
  13.     <!--用于访问GPS定位-->  
  14.     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>  
  15.     <!--用于获取wifi的获取权限,wifi信息会用来进行网络定位-->  
  16.     <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>  
  17.     <!--用于读取手机当前的状态-->  
  18.     <uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>  
  19.     <!--用于申请调用A-GPS模块-->  
  20.     <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission>  

添加自己的key值:

[html] view plain copy
  1. <meta-data  
  2.             android:name="com.amap.api.v2.apikey"  
  3.             android:value="自己的key值"/>  


在MainActivity中:

[html] view plain copy
  1. package com.bwie.test.mybasemap;  
  2.   
  3. import android.support.v7.app.AppCompatActivity;  
  4. import android.os.Bundle;  
  5.   
  6. import com.amap.api.maps.AMap;  
  7. import com.amap.api.maps.MapView;  
  8.   
  9. public class MainActivity extends AppCompatActivity {  
  10.   
  11.     @Override  
  12.     protected void onCreate(Bundle savedInstanceState) {  
  13.         super.onCreate(savedInstanceState);  
  14.         setContentView(R.layout.activity_main);  
  15.         MapView mapView = (MapView) findViewById(R.id.map);//找到地图控件  
  16.         //在activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图  
  17.         mapView.onCreate(savedInstanceState);  
  18.         AMap aMap = mapView.getMap();//初始化地图控制器对象  
  19.     }  
  20. }  
在布局文件中:activity_main.xml:

[html] view plain copy
  1. <com.amap.api.maps.MapView  
  2.         android:id="@+id/map"  
  3.         android:layout_width="match_parent"  
  4.         android:layout_height="match_parent">  
  5.     </com.amap.api.maps.MapView>  
到这,高德的基本地图就继承完毕了,效果如下:





原创粉丝点击