集成高德地图亲测

一、高德地图开发文档来集成(写的比较清楚了  这里我就简单的说下步骤)

http://lbs.amap.com/api/android-sdk/guide/create-project/android-studio-create-project

二、1.首先在Android studio里面新建立一个应用

       2.然后获取SHA1     地址:(http://lbs.amap.com/faq/top/hot-questions/249)

         3.在控制台新建应用 按照上面的把资料输入就好啦  建好之后如下图


4.接下来就是下载高德地图的开发定制包http://lbs.amap.com/api/android-sdk/download/


记住下载这个哦  不要下错了

5.下载之后解压是这样的


a.把我画红色的 添加到libs中去


b.把其余的包发到main下面去(如图)

c.在main哪里新建一个文件夹命名jniLibs(记住这个名称一定不要输错了,这是个坑点)

6.最后需要添加权限了(如下所示)--在AndroidManifest中添加哦

<!--允许程序打开网络套接字-->
<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" />
<!--用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!--用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<!--用于申请调用A-GPS模块-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />

7.同样在添加完权限之后在application中添加这行

<meta-data
    android:name="MyMapDemoTest"
    android:value="7d70b2d478d38184c4a57384ba297a02" />

如下图


8.到这里就要开始写代码了哦

a.activity_main.xml代码展示

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.administrator.mydemotextmap.MainActivity">

    <com.amap.api.maps.MapView
        android:id="@+id/map"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    </com.amap.api.maps.MapView>

</android.support.constraint.ConstraintLayout>

b.在main方法中的代码如下所示:

public class MainActivity extends AppCompatActivity {
    AMap aMap;
    MapView mMapView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获取地图控件引用
        mMapView = (MapView) findViewById(R.id.map_view);
        //activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图
        mMapView.onCreate(savedInstanceState);
        //初始化地图控制器对象 牛逼 3.01都搞了ta'men'yong'd
        if (aMap == null) {
            aMap = mMapView.getMap();
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        //activity执行onDestroy时执行mMapView.onDestroy(),销毁地图
        mMapView.onDestroy();
    }

    @Override
    protected void onResume() {
        super.onResume();
        //activity执行onResume时执行mMapView.onResume (),重新绘制加载地图
        mMapView.onResume();
    }

    @Override
    protected void onPause() {
        super.onPause();
        //activity执行onPause时执行mMapView.onPause (),暂停地图的绘制
        mMapView.onPause();
    }

    @Override
    protected void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        //activity执行onSaveInstanceState时执行mMapView.onSaveInstanceState (outState),保存地图当前的状态
        mMapView.onSaveInstanceState(outState);
    }
}

9、最后运行 就看到效果啦!是不是很简单


猜你喜欢

转载自blog.csdn.net/qq_16479139/article/details/80018670
今日推荐