百度地图sdk Android开发学习笔记(一)

百度地图sdk越来越多的应用在Android应用中,百度提供的借口很多,用起来比较方便,最近我也是有个项目要用到百度地图的接口,所以就记录一下详细的情况,不是大神,只是记录学习的经历,提供给初学者一个参考。

要想成功的调用百度地图sdk,我们首先需要申请一个百度开发者账号,可以点击这里进行申请。

申请下来之后我们可以点击左侧的“获取密钥”,然后创建应用,填写完相应的信息后,提交即可,这里我们需要注意的一点是“数字签名+;+包名”数字签名是你的编译器的一个参数,eclipseADT的话是在window->perferences->Android->Build->SHA1这个就是数字签名,然后你的包名可以随便起,但是要记住因为后期会有对照的使用,很重要。然后你会获得一串key这个非常的重要,会在之后你的应用中有所使用,最好复制下来备用。

接下来我们需要下载百度地图sdk需要的包,没有的同学可以在这里下载。

得到了sdk以后我们就算是准备就绪,可以开始我们Android项目的创建了。

首先,我们创建一个安卓的项目,编译器不限,src下建的包的包名一定要起刚才在申请是填写的包名。

然后,在AndroidManifest中填写你获得的秘钥

<application>  
    <meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="开发者 key" />  
</application>

接着添加权限

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.imooc.baidumap"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />
    
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
	<uses-permission android:name="android.permission.INTERNET"/>
	<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
	<uses-permission android:name="android.permission.WAKE_LOCK"/>
	<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
	<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
	<uses-permission android:name="android.permission.GET_TASKS" />
	<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
	<uses-permission android:name="android.permission.WRITE_SETTINGS" />
    
	<application>  
    <meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="EoKKQXAotcQVbHIZ0a6mhXWp" />  
	</application>

接着在activity_main.xml文件中添加地图控件


<RelativeLayout 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">
    
    <com.baidu.mapapi.map.MapView  
    android:id="@+id/id_bmapView"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"  
    android:clickable="true" />


</RelativeLayout>

然后,在应用程序创建时初始化 SDK引用的Context 全局变量

在main函数中添加几行即可

public class MainActivity extends Activity {  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);   
        //在使用SDK各组件之前初始化context信息,传入ApplicationContext  
        //注意该方法要再setContentView方法之前实现  
        SDKInitializer.initialize(getApplicationContext());  
        setContentView(R.layout.activity_main);  
    }  
}

创建地图Activity,管理地图生命周期,这样的话会使得你应用关闭的时候你的地图也会同时关闭,避免内存占用

public class MainActivity extends Activity {  
    MapView mMapView = null;  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);   
        //在使用SDK各组件之前初始化context信息,传入ApplicationContext  
        //注意该方法要再setContentView方法之前实现  
        SDKInitializer.initialize(getApplicationContext());  
        setContentView(R.layout.activity_main);  
        //获取地图控件引用  
        mMapView = (MapView) findViewById(R.id.bmapView);  
    }  
    @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();  
        }  
    }

到此为止你就做好了一个最基本的利用百度地图sdk做的一个小项目,在手机上可以测试,可以查看百度地图的情况。

详细情况也可以参看百度的官网介绍



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值