子应用管理方案

1、制作应用包

参考 统一管理平台(UMM) -> UMM开发指导 -> EMM应用包制作及上传说明 -> EMM应用包制作

2、上传子应用

参考 统一管理平台(UMM) -> UMM开发指导 -> EMM应用包制作及上传说明 -> EMM应用上传操作说明 -> 子应用上传

3、子应用升级

步骤:
1.配置emm server信息:emm.writeConfig()
2.注册设备:emm.registerDevice()
3.获取用户列表:emm.getUserCommonApps()
4.获取系统列表:emm.getSystemApps()
5.点击app做判断:
1)判断是否安装:如果未安装,进行安装: emm.installWebApp()
2)若已安装,判断是否需要升级:如果需要升级,进行升级:emm.upgradeWebApp()
3)若不需要升级,打开应用:emm.openWebApp()

注意:
上述API使用参考:
统一管理平台(UMM) -> UMM 公共、
统一管理平台(UMM) -> 应用管理 -> MAM API

4、示例

  1. function init(){
  2. emm.writeConfig({ //设置emm server host和port
  3. "host": "https://emm.yonyoucloud.com",
  4. "port": "443"
  5. });
  6. emm.registerDevice({ //注册device
  7. "username" : "xxx",
  8. "password" : "xxxxxxxx",
  9. "companyId":'xxxx'
  10. },function(ret){
  11. //alert("注册设备成功:" + $summer.jsonToStr(ret));
  12. },function(ret){
  13. alert("注册设备失败:" + $summer.jsonToStr(ret));
  14. });
  15. }
  16. /*获取常用app*/
  17. function getUserCommonApps(){
  18. emm.getUserCommonApps({
  19. "userid": "xxx", //用户名
  20. "companyId":'xxx', //租户id
  21. "categoryname":'常用应用' //该分类是指在emm server上创建的分类名称
  22. }, function userAppsS(res){
  23. alert(res.result);
  24. },function userAppsE(res){
  25. $summer.alert(res);
  26. alert('获取用户app列表失败!!!');
  27. });
  28. }
  29. /*获取全部app*/
  30. function getSystemApps(){
  31. emm.getSystemApps({
  32. "userid": "xxx",
  33. "companyId":'xxx'
  34. },function sysAppsS(res){
  35. alert(res.result);
  36. },function sysAppE(res){
  37. $summer.alert(res);
  38. alert('获取系统app列表失败!!!');
  39. });
  40. }
  41. /*点击应用*/
  42. function clickApp(obj) {
  43. var title=$(obj).parents('.um-sortable').prev('.modal-title');
  44. var groupId=title.text();
  45. var appid = $(obj).attr('data-id');
  46. var isInstall = $(obj).attr('data-installed');
  47. var isupdate=$(obj).attr('data-isupdate');
  48. var version=$(obj).attr('data-version');
  49. var downloadURL=$(obj).attr('data-downloadURL');
  50. /*新添加字段,启动页*/
  51. var homepage=$(obj).attr('data-homepage');
  52. /*给列表添加选择类*/
  53. $(obj).addClass('click-target');
  54. if(groupId != ""){
  55. if (isInstall == 'true') {
  56. if(isupdate=='true'){
  57. upgrade(appid,version,downloadURL);
  58. }else{
  59. openApp(appid,homepage);
  60. }
  61. } else if(isInstall=='false'){
  62. appInstall(appid,version,downloadURL);
  63. }
  64. }
  65. }
  66. /*安装应用*/
  67. function appInstall(appid,version,downloadURL) {
  68. emm.installWebApp({
  69. "appid": appid,
  70. "version":version,
  71. "downloadURL":downloadURL,
  72. }, "installS()", "instllE()")
  73. }
  74. /*安装成功*/
  75. function installS(ret) {
  76. console.log(ret);
  77. if (ret.isfinish == 1) {
  78. summer.toast({msg:'安装完成'});
  79. }
  80. }
  81. /*安装失败*/
  82. function instllE(res) {
  83. $summer.alert(res);
  84. }
  85. /*升级应用*/
  86. function upgrade(appid,version,downloadURL){
  87. emm.upgradeWebApp({
  88. "appid":appid,
  89. "version":version,
  90. "downloadURL":downloadURL,
  91. },"upgradeS()","upgradeE()")
  92. }
  93. /*升级应用成功*/
  94. function upgradeS(ret){
  95. if (ret.isfinish == 1) {
  96. summer.toast({msg:'升级完成'});
  97. }
  98. }
  99. /*升级应用失败*/
  100. function upgradeE(res){
  101. $summer.alert(res);
  102. }
  103. /*打开应用*/
  104. function openApp(appid,homepage) {
  105. emm.openWebApp({
  106. "appid": appid,
  107. "homepage":homepage,
  108. "params": {}
  109. }, "openS()", "openE()")
  110. }
  111. /*打开应用成功*/
  112. function openS(ret) {
  113. alert($summer.jsonToStr(ret));
  114. }
  115. /*打开应用失败*/
  116. function openE(ret) {
  117. alert($summer.jsonToStr(ret));
  118. }
文档更新时间: 2018-01-16 10:20