platform.ts 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. import { JSB } from "cc/env";
  2. export const ISJSB = JSB;
  3. /**
  4. * 平台功能
  5. */
  6. export namespace platform {
  7. /**
  8. * 检查权限
  9. */
  10. export function checkCPermissions() {
  11. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "checkCPermissions", "()V");
  12. }
  13. /**
  14. * 下载apk并安装
  15. * @param url 下载地址
  16. * @param saveName apk保存的名称
  17. */
  18. export function downloadAPK(url: string, saveName: string = "app.apk", visibility: boolean = false) {
  19. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "downloadAPK", "(Ljava/lang/String;Ljava/lang/String;Z)V", url, saveName, visibility);
  20. }
  21. /**
  22. * 展示激励视频
  23. */
  24. export function showRewardVideoAD() {
  25. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "showRewardVideoAD", "()V");
  26. }
  27. /**
  28. * 展示插屏广告
  29. */
  30. export function showInterstutalAD() {
  31. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "showInterstutalAD", "()V");
  32. }
  33. /**
  34. * 展示全屏广告
  35. */
  36. export function showFullScreenAD() {
  37. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "showFullScreenAD", "()V");
  38. }
  39. /**
  40. * 展示横幅广告
  41. */
  42. export function showBannerAD() {
  43. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "showBannerAD", "()V");
  44. }
  45. /**
  46. * 移除横幅广告
  47. */
  48. export function removeBannerAD() {
  49. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "removeBannerAD", "()V");
  50. }
  51. /**
  52. * 展示原生广告
  53. */
  54. export function showNativeAD() {
  55. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "showNativeAD", "()V");
  56. }
  57. /**
  58. * 移除原生广告
  59. */
  60. export function removeNativeAD() {
  61. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "removeNativeAD", "()V");
  62. }
  63. /**
  64. * 移除开屏图
  65. */
  66. export function removeSplash() {
  67. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "removeSplash", "()V");
  68. }
  69. /**
  70. * 微信登录
  71. */
  72. export function wxLogin() {
  73. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "wxLogin", "()V");
  74. }
  75. /**
  76. * 微信分享
  77. */
  78. export function wxShare(url: string, title: string, descroption: string) {
  79. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "wxShare", "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V", url, title, descroption);
  80. }
  81. /**
  82. * 打开手机浏览器
  83. * @param url 跳转地址
  84. */
  85. export function openUrl(url: string) {
  86. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "openUrl", "(Ljava/lang/String;)V", url);
  87. }
  88. /**
  89. * 打开微信小程序
  90. * @param url 跳转地址
  91. */
  92. export function openWXApplets(userName: string, url: string) {
  93. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "openWXApplets", "(Ljava/lang/String;Ljava/lang/String;)V", userName, url);
  94. }
  95. /**
  96. * UM上报
  97. */
  98. export function umUp(eventId: string) {
  99. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "umBuriedPoint", "(Ljava/lang/String;)V", eventId);
  100. }
  101. /**
  102. * 试玩游戏
  103. */
  104. export function intoGameList(userId: string) {
  105. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "intoGameList", "(Ljava/lang/String;)V", userId);
  106. }
  107. /**
  108. * 复制字符串
  109. */
  110. export function copyText(text: string) {
  111. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "copyText", "(Ljava/lang/String;)V", text);
  112. }
  113. /**
  114. * 上报用户ID
  115. */
  116. export function setThinkingID(userId: string) {
  117. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "setThinkingID", "(Ljava/lang/String;)V", userId);
  118. }
  119. /**
  120. * 上报数数
  121. */
  122. export function reportThinking(eventName: string, data: string = "") {
  123. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "reportThinking", "(Ljava/lang/String;Ljava/lang/String;)V", eventName, data);
  124. }
  125. /**
  126. * 第一次接口上报数数
  127. */
  128. export function reportThinkingOnce(eventName: string, data: string = "") {
  129. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "reportThinkingOnce", "(Ljava/lang/String;Ljava/lang/String;)V", eventName, data);
  130. }
  131. /**
  132. * 上报用户数据到数数
  133. */
  134. export function reportThinkingUserInfo(userData: string) {
  135. ISJSB && jsb.reflection.callStaticMethod("com/cocos/game/MainActivity", "reportThinkingUserInfo", "(Ljava/lang/String;)V", userData);
  136. }
  137. }