1、如果你是一个新的开发者,还没有MAP key,可以参考上一篇文章最新基于高德地图的android进阶开发(1),上一篇说到下载地图SDK,选择的是一键下载,下载完后解压,包含文件如下图中所示,第一次解压是三个压缩包,还有一个demo文件夹,进一步解压会出现下面所示的jar开发包。

2.上面下载的SDK,主要包括下面的功能,1.3D地图,2.2D地图 ,3.搜索服务。相关API连接:http://a.amap.com/lbs/static/unzip/Android_Map_Doc/index.html与android studio开发结合进行android 开发,在android studio中添加第三方JAR包的方法,下面以地图开发为例,将jar包复制到android应用的app/libs/目录下,切换成project面板,然后选中这两个jar包点击右键,选择add As library,这样就将jar加到了应用中。

3.添加.so文件的方法,至少有两种方式,下图显示方式1

下面展示方式2,将arm64-v8a 和armeabi放到libs下,并配置build gradel文件,如下图中所示

下面是build gradel文件

apply plugin: 'com.android.application'android {compileSdkVersion 23buildToolsVersion "23.0.3"
//注意下面是必须的sourceSets {main {jniLibs.srcDirs = ['libs']}}defaultConfig {applicationId "com.dragon.arnav"minSdkVersion 14targetSdkVersion 23versionCode 1versionName "1.0"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'}}}dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')testCompile 'junit:junit:4.12'compile 'com.android.support:appcompat-v7:23.4.0'compile files('libs/AMap_3DMap_V3.3.2_20160525.jar')compile files('libs/AMap_Search_V3.3.0_20160616.jar')compile files('libs/AMap_2DMap_V2.9.0_20160525.jar')}

3.配置权限和相应有的key ,下面显示androidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.dragon.arnav">
<!--添加对应有权限--><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" /><application
        android:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:supportsRtl="true"android:theme="@style/AppTheme"><!--启动高德地图服务,下面的value不要照着输入,请输入你申请是的apikey value--><meta-data
            android:name="com.amap.api.v2.apikey"android:value="fc5d4be7c65a05064dd552395ae46bdb"/>
<!--android:configChanges="orientation|keyboardHidden|screenSize"这句是支持横竖屏切换,要求系统4.0以上--><activity android:name=".Main"android:configChanges="orientation|keyboardHidden|screenSize"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application></manifest>

4.所有的文件和权限弄完后,下面开始布局文件,main.xml

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="com.dragon.arnav.Main">
<!--使用高德地图提供的Map View--><com.amap.api.maps.MapView
        android:id="@+id/map"android:layout_width="match_parent"android:layout_height="match_parent"/><ToggleButton
        android:id="@+id/tb"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="top|right"android:textOn="卫星地图"android:textOff="普通地图"android:checked="false"/></FrameLayout>

5.hello map,主要代码main.java

package com.dragon.arnav;import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.CompoundButton;
import android.widget.ToggleButton;import com.amap.api.maps.AMap;
import com.amap.api.maps.MapView;public class Main extends AppCompatActivity {private MapView mapView;private AMap aMap;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);mapView = (MapView) findViewById(R.id.map);
//        必须回调MapView的onCreate()方法mapView.onCreate(savedInstanceState);init();ToggleButton tb = (ToggleButton) findViewById(R.id.tb);tb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener(){@Overridepublic void onCheckedChanged(CompoundButton buttonView,boolean isChecked){if(isChecked){aMap.setMapType(AMap.MAP_TYPE_SATELLITE);} else{aMap.setMapType(AMap.MAP_TYPE_NORMAL);}}});}//初始化AMap对象private void init(){if(aMap ==null){aMap = mapView.getMap();}}
@Overrideprotected void onResume(){super.onResume();mapView.onResume();
}
@Overrideprotected void onPause(){super.onPause();mapView.onPause();
}@Overrideprotected void onSaveInstanceState(Bundle outState){super.onSaveInstanceState(outState);mapView.onSaveInstanceState(outState);}@Overrideprotected void onDestroy(){super.onDestroy();mapView.onDestroy();}
}

6.完成效果图预览


7.欢迎大家加入AR、VR开发群和关注AR引路人公众号

最新基于高德地图的android进阶开发(2)小试牛刀相关推荐

  1. 南邮Android实验报告三:基于高德地图的综合应用

    实验三 基于高德地图的综合应用 一.目的要求 1.学会安卓应用中涉及位置服务时的解决方案. 2.练习在使用第三方插件时,遇到版本不兼容时的处理步骤和方法. 二.实验环境 1.硬件配置:Intel Co ...

  2. android 基于高德地图的轨迹回放

    android 基于高德地图的轨迹回放 前段时间公司项目有一个需求,就是需要看到设备上传之后的轨迹路线,并且可以实现回放的整个过程,功能包括路线回放.地图位置插点.回放之后的轨迹标记颜色.回放加速等功 ...

  3. Android学习之高德地图的通用功能开发步骤(二)

    周一又来了,我就接着上次的开发步骤(一)来吧,继续把高德地图的相关简单功能分享一下 上次写到了第六步,接着写第七步吧. 第七步:定位 + 地图选点 + 路径规划 + 实时导航 以下是我的这个功能Nav ...

  4. Android基于高德地图实现多人实时共享位置

    自开发上一款智慧旅游产品后,发现一个很有意义而且很实用的功能,就是模仿微信的位置共享,可以看到对方的位置,一直想模仿做出这样的效果.最近闲下来之后终于实现了.下面就把我的实现过程和心得分享给大家. 步 ...

  5. 只用一个marker 替换 高德_Android基于高德地图完全自定义Marker的实现方法

    前言 相信做地图社交类APP开发的大家都知道,一般情况下,为了整体的美观和用户体验度,我们需要定制化Marker的样式.本文中实现的方式都是基于高德地图的,百度地图也类似,大家可以照葫芦画瓢,废话不多 ...

  6. 基于高德地图JsAPI进行浏览器精确定位,实现手机端考勤打卡功能

    前言: 由于项目需求需要在项目中实现手机端(基于网页)考勤打卡功能,最初考虑使用H5自身定位功能,但尝试过后,效果很不稳定.然后尝试使用百度地图JsAPI,百度家的稳定倒是很稳定,没想到的是定位位置和 ...

  7. 基于高德地图SDK实现跑步路线踩点

    前言   现在市面上有很多跑步的app,主要的功能大致是记录你的跑步路线以及你的跑步状况,速度距离等,大多是使用了高德地图,百度地图之类的SDK.   之前学校里有一款课外体育考勤的跑步APP,叫运动 ...

  8. 基于高德地图实现融云位置共享功能

    基于高德地图实现融云位置共享功能(Android篇) 效果预览: 开发准备: 1: 登录 融云开发者账号,提交 server 平台工单申请开通 实时位置共享功能.工单回复开通成功后. 2 小时生效. ...

  9. 基于百度地图实现Android定位功能实现(详解+教程)

    基于百度地图实现Android定位功能实现(详解+教程) 1.初始化 (一)获取到SHA1 (1)找到View中的Tool Windows并打开Terminal (2)找到你的jdk的bin目录,小编 ...

  10. python交通调查数据处理_GitHub - unlimitbladeworks/traffic-monitor: 基于高德地图的交通数据分析...

    traffic-monitor(基于高德地图的交通数据分析) 设计需求在于每天上班早高峰期,每次都提前出门,虽然有地图可以实时查看路况,但是再过一阵时间 就会异常的堵车如果通过数据监控分析每天指定路段 ...

最新文章

  1. 构建之法阅读笔记04
  2. 任意长度的字典生成算法
  3. 使用通用SOP8转接板调试半桥驱动芯片
  4. java向上造型的优点_老榆木家具适合什么装修风格?老榆木家具有哪些优点
  5. retinaface自定义增强
  6. 链表用java实现简单单链表linkedlist
  7. linux 访客日志ip,shell统计ip访问情况,要求分析访问日志分析。
  8. gorm 密码字段隐藏_【财富密码】第1期:《LSTM大战上证指数-PyTorch版》
  9. 十恶不赦到底是哪十恶?
  10. 系统地址和服务器地址不一致,在打开远程通服务配置程序时检测系统配置时提示配置失败,映射的ip地址与服务器不一致。...
  11. 2021年中国主轴修复服务市场趋势报告、技术动态创新及2027年市场预测
  12. Android 实现计时器
  13. javaScript导出excel表格,数据量过大导出失败问题
  14. C++动态库和静态库的使用方法和区别
  15. Ubuntu16.04 + cuda8.0 + GTX1080 + matlab14.04a + Opencv3.0 + caffe 安装教程
  16. 双色球(过滤历史数据+过滤连号+红球包含+篮球包含+大小分布)
  17. MATLAB | 如何使用MATLAB绘制甘特图(gantt chart)
  18. 2022年度总结:除旧迎新,继往开来!
  19. one world,one dream
  20. Windows 环境JDK环境配置

热门文章

  1. ssh中懒加载问题org.hibernate.LazyInitializationException
  2. opencv学习之路(2)--(图像创建复制和保存)
  3. 复制当前地址到系统剪贴板
  4. Spring Boot入门(3)-数据库操作
  5. Eclipse下创建Hibernate工程
  6. STC学习:便携式温度采集器
  7. vector容器——赋值操作
  8. 群同态基本定理证明_群论(2): 群作用, Sylow定理
  9. C程序设计--对文件的输入输出(案例)
  10. word中填充效果锁定纵横比_操作基础知识Word文字编辑