Android集成百度地图(一)

1.创建项目

打开百度地图开放平台,登录或者注册帐号,在控制台中创建应用。如图:


输入信息,获取安全码,如图:


开发版SHA1获取方法:

在Android Studio中找到Terminal并打开,或者在最下面找到Terminal 如下图:


输入命令  C:  进入c盘;

接着输入命令  cd Users\Administrator   其中Administrator是自己的用户名  Administrator文件下有个.adnroid文件, 输入命令   cd  .android,最后就找到了.android。输入命令  keytool -list -v -keystore debug.keystore 按回车,然后输入秘钥:android(系统默认)这里直接回车,如下图:



发布版SHA1获取:

前面和获取开发版的步骤一样,最后一步更改一下,输入命令  keytool -list -v -keystore 文件目录\自己的签名文件 比如我的:keytool -list -v -keystore E:\appkey\bdmap.jsk ,接着按回车,然后输入秘钥:(创建签名文件时的密码)    回车 如下图:



点击提交,即可获得AK。如图:


下载SDK,选择我们需要的功能下载,如图:


  • 1、在app文件夹下的新建libs文件夹(默认应该有),将BaiduLAB_Android.jar文件拷入,右键该jar包,选择add as library。
  • 2、在src文件夹下的的main文件夹下新建jniLibs文件夹,将以下这些文件夹拷入,如图:

  • 在AndroidManifest.xml文件下添加权限信心、百度key等

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="map.hq.com.baidumapdemo">
    <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" />
    <!-- 访问精确位置的权限 -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <!-- 这个权限用于进行网络定位-->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <!-- 获取运营商信息,用于支持提供运营商信息相关的接口-->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <!-- 百度地图key -->
        <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="BNpta9aVS2420ZlN2tGtOHmEWI45Avbr" />

        <service
            android:name="com.baidu.location.f"
            android:enabled="true"
            android:process=":remote">
        </service>
   

</application>

</manifest>

activity_main.xml里添加控件

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="map.hq.com.baidumapdemo.MainActivity">

    <com.baidu.mapapi.map.MapView
        android:id="@+id/baiduMapView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />
</RelativeLayout>

在MainActivity.class中

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //该方法注意要在setContentView之前实现
        SDKInitializer.initialize(getApplicationContext());
        setContentView(R.layout.activity_main);
    }
}

最后效果如图:


猜你喜欢

转载自blog.csdn.net/hua93/article/details/79677274