Android Studio – 使用百度地图SDK教程

来源:互联网 发布:mac怎么安装第三方软件 编辑:程序博客网 时间:2024/05/18 03:25

Android Studio – 使用百度地图SDK教程


一.Android Studio创建签名

我们在使用Android Studio进行应用的发布时要进行签名,此百度经验将通过一个应用的签名过程教大家如何签名。http://jingyan.baidu.com/article/a24b33cd7086d719fe002b8c.html

二.准备百度map需要的签名和包名

Android Studio 不想eclipse 那样可以直接看到签名,根据上一步的百度经验会生成一个 *******.jks 的文件 通过此文件并使用 jre 下的 keytool 来查看签名,

我的是 文件名是 debug.jks 放到E:\debug.jks, 使用cmd 定位到 C:\Program Files\Java\jre1.8.0_71\bin>keytool.exe  目录下 使用命令:

keytool.exe -list -v -keystore E:\debug.jks

接下来会提示输入动态口令,,如下图所示:复制下 SHA1:  1A:E3:3B:57:AC:59:1A:C4:16:84:36:99:33:5A:28:6D:29:1C:D8:8C



三、申请key

使用百度地图SDK需要密钥,具体流程请参考百度官方文档。

Key的申请地址为:http://lbsyun.baidu.com/apiconsole/key    导引手册:http://developer.baidu.com/map/index.php?title=androidsdk/guide/key

拿到访问应用(AK) 备用:


四.下载开发包



解压 下载下的压缩包如下图


. Android Studio 使用百度地图SDK


新建一个工程:myapplication2

如图所示,将显示模式由 Android 调整为 Project。有的是上下框,我的是左右框,主要看小箭头,只要能看到app/libs 文件夹即可

 

拷贝解压后libs下所有的文件 ,到  libs  目录下

效果如图所示:


在 BaiduLBS_Android.jar 右键选择Add As Library…选项,也可以收到在app根目录下的build.gradle 文件中添加一句 compile files('libs/BaiduLBS_Android.jar')


重点: 在把全部包导入之后

build.gradle 文件中应出现如下

compile files('libs/BaiduLBS_Android.jar')compile files('libs/IndoorscapeAlbumPlugin.jar')compile files('libs/httpmime-4.1.2.jar')另外在  android{} 下增加
sourceSets {    main() {        jniLibs.srcDirs = ['libs']    }
效果如下图所示



  在AndroidManifest.xml中添加开发秘钥和所需权限。

按照百度官方的教程

http://lbsyun.baidu.com/index.php?title=androidsdk/guide/hellobaidumap

第一步:创建并配置工程(具体方法参见工程配置部分的介绍);

第二步:在AndroidManifest中添加开发密钥、所需权限等信息;

(1)在application中添加开发密钥

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

2)添加所需权限

<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" />

第三步,在布局xml文件中添加地图控件;

<com.baidu.mapapi.map.MapView      android:id="@+id/bmapView"      android:layout_width="fill_parent"      android:layout_height="fill_parent"      android:clickable="true" />

第四步,在应用程序创建时初始化 SDK引用的Context 全局变量:

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);      }  }

注意:在SDK各功能组件使用之前都需要调用

SDKInitializer.initialize(getApplicationContext());,因此我们建议该方法放在Application的初始化方法中

第五步,创建地图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();          }      }此时编译并运行工程运行结果


1 0
原创粉丝点击