百度地图初步Hello BaiduMap——(参考Baidu官网)

百度还是非常不错,下载百度地图SDK,导入相应的jar包和so文件,代码都非常省事,就可以调出地图显示了。

一:工程配置

这里的配置步骤还是不能偷懒,按照官网上的指南一步一步配置好。

(1)把baidumapapi_v3_1_0.jar复制到libs文件夹下。

(2)把libBaiduMapSDK_v3_1_0.so复制到armeabi文件夹(如果没有就在libs下创建一个文件夹)

(3)右键工程项目--properties--java bulid path--libraries--add jars--添加baidumapapi_v3_1_0.jar应用


二:Manifest文件添加key和permisson

Manifest.xml文件最终的代码如下

<span style="font-size:14px;"><?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.hzh.map3"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <meta-data  
        android:name="com.baidu.lbsapi.API_KEY"  
        android:value="开发者 key" />  
        <activity
            android:name="com.hzh.map3.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
<uses-permission android:name="android.permission.GET_ACCOUNTS" />  
<uses-permission android:name="android.permission.USE_CREDENTIALS" />  
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />  
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />  
<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.CHANGE_WIFI_STATE" />  
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  
<uses-permission android:name="android.permission.READ_PHONE_STATE" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
<uses-permission android:name="android.permission.BROADCAST_STICKY" />  
<uses-permission android:name="android.permission.WRITE_SETTINGS" />  
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
</manifest></span><span style="font-size:18px;">
</span>
三、layout布局文件添加百度MapView

<com.baidu.mapapi.map.MapView  
    android:id="@+id/bmapView"  
    android:layout_width="fill_parent"  
    android:layout_height="fill_parent"  
    android:clickable="true" />
四、MainActivity中代码。

这里面出现了一个问题折腾了很久,在oncreate方法中,

SDKInitializer类一直报错,最后才知道在第一步工程配置中下载的jar包和so包都不是最新版本的,更新到上面的最新版本,最后运行成功。

<span style="font-size:14px;"> SDKInitializer.initialize(getApplicationContext());</span>
<span style="font-size:14px;">package com.hzh.map3;

import com.baidu.mapapi.SDKInitializer;
import com.baidu.mapapi.map.MapView;

import android.os.Bundle;
import android.app.Activity;

public class MainActivity extends Activity {
	 MapView mMapView = null;  
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        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();  
        }  
    
}</span>

五、最终运行效果图

六、jar包和so文件下载:http://developer.baidu.com/map/index.php?title=androidsdk/sdkandev-download

七、昨天运行第二次出现了错误:“authentication error key is not exist”的错误信息。

解决办法:http://bbs.lbsyun.baidu.com/viewthread.php?tid=1816&highlight=key

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值