作者:xinxin
2013年5月16日,在I/O大会上,谷歌正式推出新的Android开发环境—Android Studio,并对开发者控制台进行了改进,增加了一些新功能。随着谷歌的推广,使用Android Studio的开发者越来越多。那么SuperMap iMobile for Android是否可以在Android Studio平台上开发呢?答案是肯定的,下面就分享一下在此平台上搭建工程的步骤。
首先,将Android Studio软件安装好和配置好JDK环境,下载地址http://www.androiddevtools.cn,安装步骤在此就不作详细描述。其次,在http://support.supermap.com.cn/product/iMobile.aspx中下载SuperMap iMobile for Android并解压。前期工作准备好后,打开Android Studio,开始创建工程,具体步骤如下:
第一步:创建 Android Studio 项目
- 在 Android Studio 主页选择“File”–>”New” --> “New Project…”
2.接下来会看到下面的界面
3.点击Next得到下面界面
4.点击Next得到下面界面
5.点击Next得到下面界面
6.点击Finish会有一个进度条显示创建工程的进度,创建完成后选择Project结构目录得到下面界面
第二步:使用SuperMap iMobile for Android
示例中用的是SuperMap IMobile 8C SP2 for Android - 将SuperMap IMobile 8C SP2 for Android解压包中的libs文件中jar包文件和依赖库添加到app下的libs文件中,如下图:
- 选中上步添加的jar文件,右键—>Add As Library,如下图
- 在app的build.gradle里面加上jni的sourceSets配置:jniLibs.srcDirs = [‘libs’],完整代码如下图:
第三步:在AndroidManifest.xml文件中添加权限
双击AndroidManifest.xml,在里面添加最低权限,如下图:
第四步:在AndroidManifest.xml文件中添加Activity配置
在承载 MapControl 的那个 Activity 项目中添加 Activity 配置,让地图界面在横竖屏切换时不再重复调用 onCreate,具体代码如图:
注意:当Android 版本在4.0以上时,配置configChanges要添加screenSize,具体为:android:configChanges=“keyboardHidden|orientation|screenSize”。
第五步:支持多格式屏幕配置
在AndroidManifest.xml中设置,具体代码如图:
第六步:编写代码 - 在布局文件 activity_main.xml 中添加如下代码,如图:
- 在MainActivity.java编写应用程序代码
打开工作空间中的地图的关键代码如下图:
第七步:在测试机中导入数据和许可 - 数据导入
用 SDK 的 adb 命令将产品包的 SampleData 文件夹下的数据文件传入到设备中,以便所编写的代码能打开所需数据,正确执行出结果。
注意:执行此步骤之前,请确保您已经按照“开发环境配置”文档中的相关步骤对开发环境配置完毕,并且启动模拟器。
推荐:由于传入会使用到 SDK 的 adb 命令,可将解压的 SDK 文件下的 tools 和 platform-tools 的路径配置到环境变量中,便于使用命令传入数据;如果不写入环境变量,就需要用命令行进入 SDK 的 platform-tools 的目录,然后执行 adb 命令。
(1) 进到 SDK 解压缩的 platform-tools 文件夹,命令如下图所示:
(2) 执行传入数据命令,命令是:adb push ,其中 local 是产品包中的 SampleData 的路径,remote 是上传到手机上的路径/sdcard/…,如下图所示:
注:数据的路径中不要有空格,应用程序中打开的数据路径要和测试机中存储数据的路径要一致。 - 许可配置
(1) 试用许可配置
在http://istore.supermap.com.cn/License/lic7C.aspx 这个地址中申请移动端的试用许可文件,然后用上面的命令导入到测试机中,应用程序中设置了许可路径要和设备上的存储路径一致。
(2) 正式许可配置
用企管给的序列号在线激活得到许可文件,要确保正式许可存储的路径和应用程序中设置的许可路径一致。
注:如果在真机中也可以直接复制进去更简单。
第八步:运行工程
运行工程得到结果如下图: