高德基本地图的实现继承
2017-10-18 15:45
375 查看
接下来,给大家写一下高德基本地图的实现继承过程:
![](https://img-blog.csdn.net/20171018103229930?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
在高德开发平台(官网)上下载相关SDK和Demon
第一个和第二个都可以,第一个2D,3D相关内容都有,第二个下载就是自己选择了,这里新手推荐第一个下载。
![](https://img-blog.csdn.net/20171018103307530?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20171018103329790?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
下载后解压3DMap,会生成一个jar包,先导入工程中。接下来就要生成一个自己的key值,这个key值每个人都是不一样的,且,一个工程对应唯一的一个key值,
点击控制台。
![](https://img-blog.csdn.net/20171018103347013?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
应用管理中,创建自己的应用
![](https://img-blog.csdn.net/20171018103508885?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20171018103553576?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
这里就自己填写就行,点击创建,添加新key
![](https://img-blog.csdn.net/20171018103408499?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20171018103627681?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
这里主要讲一下如何获取SHA1,比较简单的一种方法,打开cmd窗口
![](https://img-blog.csdn.net/20171018103731844?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
在弹出的控制台窗口中输入 cd .android 定位到 .android
文件夹。
![](https://img-blog.csdn.net/20171018103746321?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
继续在控制台输入命令。
debug.keystore:命令为:keytool -list -v -keystore debug.keystore
自定义的 keystore:命令为:keytool -list -v -keystore apk的keystore
![](https://img-blog.csdn.net/20171018103802602?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
提示输入密钥库密码,编译器提供的debug
keystore默认密码是 android,自定义签名文件的密码请自行填写。输入密钥后回车(如果没设置密码,可直接回车),此时可在控制台显示的信息中获取 SHA1 值,如下图所示:
![](https://img-blog.csdn.net/20171018103841261?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
这里就得到SHA1了,提交自己的key值就好了,
3D地图才需要添加so库,2D地图无需这一步骤。因为我们解压的文件是3D,所以创建新文件
在 main 目录下创建文件夹 jniLibs (如果有就不需要创建了),将下载文件的 armeabi 文件夹复制到这个目录下,如果已经有这个目录,将下载的 so 库复制到这个目录即可。如图所示:
![](https://img-blog.csdn.net/20171018103942648?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfNDA1NDE5MzU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
接下来就要在工程中写代码了:先配置权限:
[html] view plain copy <!--允许程序打开网络套接字-->
<uses-permission android:name="android.permission.INTERNET" />
<!--允许程序设置内置sd卡的写权限-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!--允许程序获取网络状态-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--允许程序访问WiFi网络信息-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--允许程序读写手机状态和身份-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!--用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<!--用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<!--用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<!--用于读取手机当前的状态-->
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<!--用于申请调用A-GPS模块-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission>
添加自己的key值:
[html] view
plain copy
<meta-data
android:name="com.amap.api.v2.apikey"
android:value="自己的key值"/>
在MainActivity中:
[html] view
plain copy
package com.bwie.test.mybasemap;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.amap.api.maps.AMap;
import com.amap.api.maps.MapView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MapView mapView = (MapView) findViewById(R.id.map);//找到地图控件
//在activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图
mapView.onCreate(savedInstanceState);
AMap aMap = mapView.getMap();//初始化地图控制器对象
}
}
在布局文件中:activity_main.xml:
[html] view
plain copy
<com.amap.api.maps.MapView
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent">
</com.amap.api.maps.MapView>
到这,高德的基本地图就继承完毕了,效果如下:
在高德开发平台(官网)上下载相关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 <!--允许程序打开网络套接字-->
<uses-permission android:name="android.permission.INTERNET" />
<!--允许程序设置内置sd卡的写权限-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!--允许程序获取网络状态-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--允许程序访问WiFi网络信息-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--允许程序读写手机状态和身份-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!--用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<!--用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<!--用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<!--用于读取手机当前的状态-->
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<!--用于申请调用A-GPS模块-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission>
添加自己的key值:
[html] view
plain copy
<meta-data
android:name="com.amap.api.v2.apikey"
android:value="自己的key值"/>
在MainActivity中:
[html] view
plain copy
package com.bwie.test.mybasemap;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.amap.api.maps.AMap;
import com.amap.api.maps.MapView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MapView mapView = (MapView) findViewById(R.id.map);//找到地图控件
//在activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图
mapView.onCreate(savedInstanceState);
AMap aMap = mapView.getMap();//初始化地图控制器对象
}
}
在布局文件中:activity_main.xml:
[html] view
plain copy
<com.amap.api.maps.MapView
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent">
</com.amap.api.maps.MapView>
到这,高德的基本地图就继承完毕了,效果如下:
相关文章推荐
- 高德基础地图+定位+设置Marker实现
- JAVA 线程的两种基本实现方法(继承Thread类和实现Runnable接口)
- ArcGIS.Server.9.3和ArcGIS API for JavaScript实现基本的地图功能(一)
- ArcEngine10.2 VC++实现地图浏览基本功能
- Android开发之高德地图实现定位
- js实现继承的4种基本方式
- Android 高德地图定位功能的实现步骤
- 高德地图的多人定位实现方式
- asp.net继承page类重写方法 实现最基本的用户登录验证 权限验证等
- lua、quick-cocos2d-x(lua)、lua基本语法、lua类的实现、lua类的继承【新手必读】
- iOS开发-开发百度地图1-iOS SDK 3.0.0-基本地图的配置及实现
- iOS地图及定位功能基本实现的详尽描述
- 手把手教你高德基础地图+定位+设置Marker实现
- 高德地图简单实现及路径规划
- ArcGIS JavaScript API 实现基本的地图功能
- iOS实现设备判断是否安装相关地图(百度、高德等)
- 手动编译java的package问题,及演示继承的基本实现
- Android 高德地图基本的一些显示,地图的缩放,logo与放缩图标的位置显示
- iOS系统自带地图的基本方法实现
- 高德地图搜索附近的实现