apps.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. var YDB = new YDBOBJ();
  2. var YDB_isWXApp = true;
  3. var YDB_GPSla = 0;
  4. var YDB_GPSlo = 0;
  5. if (isApp()) {
  6. YDB.isWXAppInstalled("installstate");
  7. }
  8. //回调是否安装微信
  9. function installstate(state){
  10. if(state == 0){
  11. YDB_isWXApp = false;
  12. }
  13. }
  14. //云打包APP获取地理位置
  15. function DoWithYDBGPS (la,lo){
  16. YDB_GPSla = la;
  17. YDB_GPSlo = lo;
  18. }
  19. //分享回调
  20. function Sharesback(state) {
  21. YDB.GoBack();
  22. }
  23. //是否为app打开
  24. function isApp(){
  25. var ua = window.navigator.userAgent.toLowerCase();
  26. if (ua.indexOf('yunzshop') > -1) {
  27. return true;
  28. } else {
  29. return false;
  30. }
  31. }
  32. // 聚合CPS的登录跳转
  33. function callAndroid() {
  34. // 由于对象映射,所以调用cps对象等于调用Android映射的对象
  35. cps.toLogin();
  36. }
  37. function callIOS(data) {
  38. window.webkit.messageHandlers.toLogin.postMessage(data);
  39. }
  40. // 聚合CPS的退出跳转
  41. function toQuitAndroid() {
  42. cps.toQuitAndroid();
  43. }
  44. function toQuitIOS(data) {
  45. window.webkit.messageHandlers.toQuitIOS.postMessage(data);
  46. }
  47. // 聚合CPS的分享方法
  48. function shareByH5Android(json) {
  49. // 由于对象映射,所以调用cps对象等于调用Android映射的对象
  50. cps.shareByH5Android(json);
  51. }
  52. function shareByH5IOS(data) {
  53. window.webkit.messageHandlers.shareByH5IOS.postMessage(data);
  54. }
  55. // 聚合CPS的返回上一页的方法
  56. function routeBackUrlAndroid() {
  57. cps.routeBackUrlAndroid();
  58. }
  59. function routeBackUrlIOS(data) {
  60. window.webkit.messageHandlers.routeBackUrlIOS.postMessage(data);
  61. }
  62. // 聚合CPS调起小程序的方法
  63. function miniWXAndroid(json) {
  64. cps.miniWXAndroid(json);
  65. }
  66. function miniWXIOS(data) {
  67. window.webkit.messageHandlers.miniWXIOS.postMessage(data);
  68. }
  69. // 聚合CPS原生微信支付
  70. function wxPayAndroid(json) {
  71. cps.wxPayAndroid(json);
  72. }
  73. function wxPayIOS(data) {
  74. window.webkit.messageHandlers.wxPayIOS.postMessage(data);
  75. }
  76. // 聚合APP 任务中心跳转
  77. function toUrlAndroid(json) {
  78. cps.toUrlAndroid(json);
  79. }
  80. function toUrlIOS(data) {
  81. window.webkit.messageHandlers.toUrlIOS.postMessage(data);
  82. }
  83. // 聚合APP 原生页面跳转
  84. function toAPPUrlAndroid(json) {
  85. cps.toAPPUrlAndroid(json);
  86. }
  87. function toAPPUrlIOS(data) {
  88. window.webkit.messageHandlers.toAPPUrlIOS.postMessage(data);
  89. }
  90. // 获取聚合APP的公众号i和域名
  91. function getKeyIAndroid() {
  92. if(cps.getKeyIAndroid()) {
  93. return JSON.parse(cps.getKeyIAndroid()) || {};
  94. }else {
  95. return {}
  96. }
  97. }
  98. function toGetKeyIIOS(data) {
  99. window.webkit.messageHandlers.toGetKeyIIOS.postMessage(data);
  100. }
  101. function getKeyIIOS(data) {
  102. var obj = {};
  103. // if(data){
  104. // obj = JSON.parse(data)
  105. // }
  106. // console.log(obj['token'],obj.i,obj.domain,"obj")
  107. // window.localStorage.setItem('getKeyIIOS',JSON.stringify(obj));
  108. var regex = /\{(.+?)\}/g;
  109. if(window.navigator.userAgent.match(regex)) {
  110. obj = JSON.parse(window.navigator.userAgent.match(regex)[0]);
  111. }
  112. // console.log(obj,"obj")
  113. return obj;
  114. }
  115. // 跳转详情通知APP
  116. function toGoodDetailIOS(data) {
  117. if(window.webkit && window.webkit.messageHandlers) {
  118. window.webkit.messageHandlers.toGoodDetailIOS.postMessage(data);
  119. }
  120. }
  121. // 详情返回列表通知APP
  122. function toGoodListIOS(data) {
  123. var u = window.navigator.userAgent;
  124. var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); // ios终端
  125. var ua = window.navigator.userAgent.toLowerCase();
  126. if (ua.indexOf("yz_cps") > -1) {
  127. // 是否为cps环境
  128. if (isiOS) {
  129. if(window.webkit && window.webkit.messageHandlers) {
  130. window.webkit.messageHandlers.toGoodListIOS.postMessage(data);
  131. }
  132. }
  133. }
  134. }
  135. // 商品购买成功通知APP
  136. function toGoodBuyIOS(data) {
  137. if(window.webkit && window.webkit.messageHandlers) {
  138. window.webkit.messageHandlers.toGoodBuyIOS.postMessage(data);
  139. }
  140. }
  141. // 商品购买成功通知APP
  142. function sharePoster(data) {
  143. if(window.webkit && window.webkit.messageHandlers) {
  144. window.webkit.messageHandlers.sharePoster.postMessage(data);
  145. }
  146. }
  147. // 全屏时是否横屏,true 横屏||false 竖屏
  148. function switchLandscapeAndroid(data) {
  149. cps.switchLandscape(data);
  150. }
  151. //Android cps聚合页跳转抖音app
  152. function androidToTikTok(data){
  153. cps.androidToTikTok(data);
  154. }
  155. //IOS cps聚合页跳转抖音app
  156. function IOStoTikTok(data){
  157. window.webkit.messageHandlers.IOStoTikTok.postMessage(data)
  158. }