作者:dongyx

使用SuperMap iMobile产品需要SuperMap的授权,即获得许可。目前,针对不同的用户和不同的使用场景,SuperMap iMobile提供三种许可方式,分别为试用许可、正式许可、教育许可。
一、试用许可
      想必有很多同学在使用初期都是使用的试用许可,那么试用许可具有哪些特点呢?
1.许可免费,可以直接使用邮箱申请,但是试用期为3个月;并且功能无限制
2.地图上含有超图水印;
3.试用许可不需要绑定设备,一个许可文件可以用在多个设备上。
      使用方法:
      将申请后的*.slm许可文件拷贝至设备中,然后调用

String rootPath = android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
Environment.setLicensePath(rootPath + "/SuperMap/license/")

二、正式许可
      在正式项目的开发中很多客户都是需要购买正式许可的,但是并不知道需要购买哪种正式许可,下面小编带大家了解iMobile产品的正式许可使用场景以及使用方法。
1.文件型正式许可:该许可主要适用于设备不能联网的情况下使用,一个许可文件对应一个设备。
使用方法:
      通过 Evironment 类的接口获取目标设备的硬件识别码(也可以通过定制应用直接获得设备的硬件识别码)

Environment.getDeviceID();

用获得的硬件识别码通过销售渠道获取许可激活文件,将文件拷贝至设备中,然后调用以下代码:

String rootPath = android.os.Environment.getExternalStorageDirectory().getAbsolutePath();
Environment.setLicensePath(rootPath + "/SuperMap/license/")

2.在线激活许可
      该许可在第一次激活时设备需要联网,激活后可一直使用。并且该许可是可归还的,在使用后都可以进行归还,然后其他设备进行激活使用
使用方法:
      通过查询序列号获取功能模块进行激活:

ArrayList<Module> modules = new ArrayList<Module>();private void active() {//用户序列号String userSerialID = "用户序列号";     RecycleLicenseManager manager = RecycleLicenseManager.getInstance(getApplicationContext());//设置许可激活回调manager.setActivateCallback(new RecycleLicenseCallback() {            @Overridepublic void upgradeFailed(String errorInfo) {}@Overridepublic void success(LicenseStatus newLicStatus) {}@Overridepublic void recycleLicenseFailed(String errorInfo) {}@Overridepublic void bindPhoneNumberFailed(String errorInfo) {}@Overridepublic void activateFailed(String errorInfo) {}@Overridepublic void queryResult(ArrayList<Module> arrModules) {modules = arrModules;//在线激活设备,传入用户序列号和需要申请的模块列表manager.activateDevice(userSerialID, modules);}@Overridepublic void otherErrors(String errorInfo) {}});//设置许可类型(注意:先设置许可类型,再初始化环境)Environment.setLicenseType(LicenseType.UUID);Environment.initialization(getApplicationContext());//查询许可中包含的模块manager.query(userSerialID);//使用查询到的模块激活,需要在查询结束后调用激活方法,分两步执行,此处直接将其放置在查询回调中执行。
}

了解序列号中有哪些许可模块,可以直接添加模块的方式配置许可:

private void active() {//用户序列号String userSerialID = "用户序列号";//设置申请许可的模块final ArrayList<Module> modules = new ArrayList<Module>();modules.add(Module.Core_Runtime);modules.add(Module.Navigation_Runtime);modules.add(Module.Realspace_Runtime);RecycleLicenseManager manager = RecycleLicenseManager.getInstance(getApplicationContext());//设置许可激活回调manager.setActivateCallback(new RecycleLicenseCallback() {@Overridepublic void upgradeFailed(String errorInfo) {}@Overridepublic void success(LicenseStatus newLicStatus) {}@Overridepublic void recycleLicenseFailed(String errorInfo) {}@Overridepublic void bindPhoneNumberFailed(String errorInfo) {}@Overridepublic void activateFailed(String errorInfo) {}@Overridepublic void queryResult(ArrayList<Module> arrModules) {}@Overridepublic void otherErrors(String errorInfo) {}});//设置许可类型(注意:先设置许可类型,再初始化环境)Environment.setLicenseType(LicenseType.UUID);Environment.initialization(getApplicationContext());//在线激活设备,传入用户序列号和需要申请的模块列表manager.activateDevice(userSerialID, modules);
}

3.在线公有云许可
      在线公有云许可对接的是SuperMap Online账号,不需要在本地部署相关服务。使用在线公有云许可需要满足设备联网、拥有SuperMap Online账号并且账号中有iMobile许可。
使用方法:
      初始化公有云对象:

3.CloudLicenseManager manager = CloudLicenseManager.getInstance(this);
manager. setLoginCallback(new CloudLicenseManager.LicenseLoginCallback(){@Overridepublic void loginAccount(boolean issuccess) {}@Overridepublic void queryLicense(QueryFormalLicenseResponse queryFormalLicenseResponse) {}@Overridepublic void activeLicense(String returnid) {}@Overridepublic void recycleLicense(int days) {}@Overridepublic void otherError(String error) {}@Overridepublic void logoutAccount(boolean logout) {}
manager.login("username","password");

查询许可,查询成功后在queryLicense回调中拿到许可ID licenseID用于下一步激活:

@Override
public void queryLicense(QueryFormalLicenseResponse queryFormalLicenseResponse) {if (queryFormalLicenseResponse!=null){int licenseCount =  queryFormalLicenseResponse.licenseCount;boolean formal = queryFormalLicenseResponse.formal;LicenseInfo[] licenseInfos = queryFormalLicenseResponse.licenses;licenseid = licenseInfos[0].id;}
}

激活许可

manager.applyFormal(licenseid);

4.教育版许可
      教育版许可顾名思义是给教育单位提供的许可,该许可需要部署一个许可服务器,在使用时只需要通过许可服务器的url地址激活就可以。具体使用方法如下:
1.初始化教育许可类 :

eduLicense = EduLicense.getInstance(this);

2.设置教育许可监听:

eduLicense.setEduLicenseApplyListener(new EduLicense.EduLicenseApplyListener() {@Overridepublic void getApplySuccess(boolean isApplySuccess) {if (isApplySuccess){Log.i(TAG, "激活成功 ");}else {Log.i(TAG, "激活失败 ");}}});

3.设置许可服务网址 :

eduLicense.setUrl("URL");

4.激活许可 ;

eduLicense.applyLicense();

5.激活完成后,获取许可信息。

eduLicense.getLicenseInfos();

许可信息中包括:
许可激活信息,及激活成功或失败。
许可描述。
许可合同有效期。该有效期是许可服务上的许可合同到期时间。

SuperMap iMobile for Android许可介绍相关推荐

  1. SuperMap iMobile for Android常见问题解答集锦(十四)

    问:SuperMap iMobile for Android中导出shp数据时能否设置其字符集,怎么设置? 答:导出时可以设置shp的字符集,通过类DataConversion下的setConvert ...

  2. SuperMap iMobile for Android之行业导航

    作者 :dongyx 在我们工作生活中,经常会遇到怎么去哪.如何去最节约成本的问题,这就需要使用地图导航的功能了,那么如何使用SuperMap iMobile for Android制作导航APP呢? ...

  3. SuperMap iMobile for Android常见问题解答集锦(十三)

    作者:皇皇 问:SuperMap iMobile for Android中是否支持实时GPS定位,怎么实现? 答:可以支持:通过LocationManagePlugin管理插件类,开启GPS设备,并设 ...

  4. SuperMap iMobile for Android 地图开发(一)

    第一步:创建 Android Studio 项目 第一步:创建 Android Studio 项目 Android Studio 有两种创建项目的方法. 第一种是在 Android Studio起始页 ...

  5. SuperMap iMobile for Android中三维AR的使用

    前言 ARCore是一种增强现实体验构建平台,它可以利用不同的API让手机能够感知其环境.理解现实世界与信息进行交互.ARCore使用三个主要功能将虚拟内容与通过手机摄像头看到的现实世界整合: 1) ...

  6. SuperMap iMobile for Android培训资料

    01_SuperMap iMobile整体介绍.pdf 02_SuperMap iMobile for Android开发准备.pdf 03_SuperMap iMobile for Android快 ...

  7. SuperMap iMobile 8Cfor Android/iOS ——专业级移动GIS开发平台

    SuperMap iMobile 8C是一款全新的移动GIS开发平台,具备专业.全面的移动GIS功能.支持基于Android和iOS操作系统的智能移动终端,可以快速开发在线和离线的移动GIS应用. 谁 ...

  8. SuperMap iMobile for Android开发入门(iMobile 10i + AS 3.6)

    SuperMap iMobile开发入门(iMobile 10i + AS3.6) 超图防坑指南 文章概要 AS3.6安装.SuperMap iMobile 10i下载 HelloMap工程创建 He ...

  9. SuperMap iMobile for Android 地图添加POI兴趣点

    作者:程溯 简介 Demo按类型往地图里添加POI兴趣点,并添加兴趣点的名称(name)与详细信息(detail).地图上不同类型的POI兴趣点采用不同符号来表示. 示例数据 Data: mypoi. ...

最新文章

  1. 怎么将jenkins打包后的war自动部署到jetty上? 1
  2. 推荐两款快速查找/替换电脑中文件的软件
  3. 汇编 整数变量 浮点数变量 符号常量
  4. Linux之RPM 软件包管理
  5. sqlserver date类型和字符串比较_VB编程基本数据类型完整剖析
  6. docker es持久化_Docker 搭建 ES 集群并整合 Spring Boot
  7. 如果量子计算机成功应用,这世界上还有普通人的生存空间吗?
  8. mysql 系统月份_MySQL里求给定的时间是所在月份的第几个星期
  9. 高效的设计可视化UI
  10. Vue学习笔记之18-网络请求模块的封装
  11. jQuery框架的ajax
  12. nanomsg实验——pubsub
  13. word格式与pdf格式相互转换
  14. 《论语》与《资本论》
  15. 08——<use><defs>标签创建图形引用
  16. 2021-CISCN-fianl-ezj4va
  17. 混合光电探测器(HPD)行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  18. Python-基于词典-中文分词算法
  19. Nvidia Tesla P100 性能评测
  20. 如何修改 linux 命令行登录界面

热门文章

  1. Van emde boas树Java实现
  2. cryp:10:数论简介
  3. 微信登录 后台 java_Java 后端 (Spring boot)+微信小程序的授权登录
  4. 时钟加闹钟c语言程序,求单片机数码时钟带闹铃的C程序?
  5. CDGA|数字化人才的学习平台成为企业和个人技能升级的关键
  6. 连发三大招 阿里云加快人工智能产业落地
  7. [Typora Markdown BP] 修改文字格式、图片缩放对齐居中、Excel表格互转、手动分页、表格不分页、Mermaid自定义绘图(以自动机为例)、思维导图导出、word导出删文字、自动编号
  8. Mars3D(含Cesium)数据及服务篇:在线地图的下载和使用
  9. Billy O’Riordan加盟Brightcove担任国际销售高级副总裁
  10. 好看的电影,好心分享【2】