安卓开发加载地图控件

最近在写毕设需要一个截图。然鹅代码在学校的实验室电脑。所以为了有个界面我又从头开始写了代码。其中地图加载是第一步。。然鹅!!百度地图文档一如既往的晦涩,可能是我是属于根骨清奇馋阿里那些人的知识。。。

准备工作:

1.选择高德地图。Android studio。 百度地图官方文档太傻逼了。

1.1 下载相关jar包  so文件(高德地图开发平台上可以下载到)。如图

安卓开发加载地图控件_第1张图片

 1.2  申请高德地图 key(具体可以看官方文档)

   提示一下 获取本机的 SH1, win+R快捷键进入命令提示符,按图所示输入 命令

安卓开发加载地图控件_第2张图片

然后 此处注意!!!!如果你平时没有作妖设置什么其他东西,直接回车

安卓开发加载地图控件_第3张图片

复制这个SHA1就可以了(复制的时候鼠标右键不管用,直接鼠标选中之后 ctrl+c)

1.3 编写 MainAcitivity  以及对应的xml文件

public class MainActivity  extends AppCompatActivity {
    private AMap aMap;   //定义AMap 地图对象的操作方法与接口
    private MapView mMapView = null;//显示地图的视图,它负责从服务器端获取地图数据,它将会捕捉屏幕触控手势
   // private Context mContext; //抽象类

    //TextView   mMapView = (TextView) findViewById(R.id.bmapView);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.baidumap);
      //  mContext = this.getApplicationContext();//获得整个应用的上下文生命周期
        mMapView = (MapView) findViewById(R.id.bmapView);
        mMapView.onCreate(savedInstanceState);// 此方法必须重写

        init(); //初始化

        //  setfromandtoMarker(); //进行路径规划
    
    }
    /**
     * 初始化AMap对象
     */
    private void init() {
        if (aMap == null) {
            aMap = mMapView.getMap();
        }
        //registerListener();
    @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);
    }
     
    }

 

 布局文件

 


1.4  重中之重!! AndroidManifest.xml中设置权限

















 按照上面的步骤,你应该可以运行成功了。如果出现闪退情况请检查

1.在MainActivity中加载布局文件的名字要和显示地图控件的xml一致!!(我就是犯了这个错误,然后百度了一大圈,发现加载错了布局文件。脑子是个好东西!)

2. 手机是不是给它赋予权限了。虽然你在AndroidManifest.xml中设置了权限,但是你还去手机的应用管理上打开相应的导航什么的权限。

3.如果你的代码中标红的,肯定是运行不起来的,也不会出现闪退。这种情况多经历几次就习惯了。。。。

与君共勉,祝我盲审顺利!!!!盲审老师万岁!!!!

你可能感兴趣的:(安卓)