wuwangdong 4 лет назад
Родитель
Сommit
2dfd9f4d9d

+ 1 - 1
assets/script/game/game/Game.ts

@@ -93,7 +93,7 @@ export default class Game extends cc.Component {
 
         console.log("===[Jsbsystem 显示开屏广告================================")
         if (mk.ad.ifShowAd) {
-            JsbSystem.showSplash();
+            //JsbSystem.showSplash();
         }
 
     }

+ 4 - 2
assets/script/mk/system/AdSystem.ts

@@ -1,5 +1,6 @@
 import { BannerAdType, InterAdType, InterFullAdType, VideoAdType } from "../../game/data/GameData";
 import { IADSDKMgr } from "../sdk/ad/IADSDKMgr";
+import JsbSystem from "./JsbSystem";
 
 /**
  * 广告管理类脚本
@@ -49,7 +50,7 @@ export default class AdSystem {
         }
 
         //初始化Topon广告SDK
-        this.adSdk.initSDK();
+        //this.adSdk.initSDK();
     }
 
     /**
@@ -69,7 +70,8 @@ export default class AdSystem {
         else {
             if (cc.sys.platform != cc.sys.WECHAT_GAME) {
                 if (cc.sys.os == cc.sys.OS_ANDROID) {
-                    this.adSdk.showVideo();
+                    //this.adSdk.showVideo();
+                    JsbSystem.showVideo();
                 }
                 else if (cc.sys.os == cc.sys.OS_IOS) {
                     jsb.reflection.callStaticMethod("AppController", "showVideo", "");

+ 15 - 0
assets/script/mk/system/JsbSystem.ts

@@ -629,6 +629,21 @@ export default class JsbSystem {
         }
         mk.http.sendData('activateLog', data);
     }
+
+    public static showVideo()
+    {
+        this.callStaticMethod(this._JSB_ANDROID_PATH, "showVideo", "()V");
+    }
+
+    public static wacthAdSuccess()
+    {
+        mk.ad.wacthAdSuccess();
+    }
+
+    public static watchAdFail()
+    {
+        mk.ad.watchAdFail();
+    }
 }
 
 window['JsbMgr'] = JsbSystem

+ 1 - 1
build/jsb-link/assets/internal/config.json

@@ -1 +1 @@
-{"paths":{"0":["effects/builtin-2d-graphics",0],"1":["effects/builtin-2d-gray-sprite",0],"2":["effects/builtin-2d-label",0],"3":["effects/builtin-2d-spine",0],"4":["effects/builtin-2d-sprite",0],"5":["effects/builtin-3d-particle",0],"6":["effects/builtin-3d-trail",0],"7":["effects/builtin-clear-stencil",0],"8":["effects/builtin-unlit",0],"9":["materials/builtin-2d-base",1],"10":["materials/builtin-2d-graphics",1],"11":["materials/builtin-2d-gray-sprite",1],"12":["materials/builtin-2d-label",1],"13":["materials/builtin-2d-spine",1],"14":["materials/builtin-2d-sprite",1],"15":["materials/builtin-3d-particle",1],"16":["materials/builtin-3d-trail",1],"17":["materials/builtin-clear-stencil",1],"18":["materials/builtin-unlit",1]},"types":["cc.EffectAsset","cc.Material"],"uuids":["30aC+Hnw1PF4pEcoY3kUYb","14TDKXr2NJ6LjvHPops74o","f1h0LXVtJOta5JLZ1xCzfI","0ek66qC1NOQLjgYmi04HvX","28dPjdQWxEQIG3VVl1Qm6T","82migssElAGb04Ws6NimQX","2afAA24LNP4YmYiaVLiivs","c0BAyVxX9JzZy8EjFrc9DU","6dkeWRTOBGXICfYQ7JUBnG","6fgBCSDDdPMInvyNlggls2","a1U5RdJRFMFL57BdJC9H1X","3ae7efMv1CLq2ilvUY/tQi","e0LYfU5ZlNFoAB4UiRrGUG","7a/QZLET9IDreTiBfRn2PD","ecpdLyjvZBwrvm+cedCcQy","43L6CczwNM/6GGmCYEQIoH","46bU+b5fROqIXVPG6aZWWK","cffgu4qBxEqa150o1DmRAy","2aKWBXJHxKHLvrBUi2yYZQ","02delMVqdBD70a/HSD99FK","60AwGqM1dKELCGhPAR+jK6"],"scenes":{},"redirect":[],"deps":[],"packs":{"0b6c4470e":[19,3,1,4,18,6,0,11,15,16,20,8,9,13,5,10,7,17,12,14,2]},"name":"internal","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":true}
+{"paths":{"0":["effects/builtin-2d-graphics",0],"1":["effects/builtin-2d-gray-sprite",0],"2":["effects/builtin-2d-label",0],"3":["effects/builtin-2d-spine",0],"4":["effects/builtin-2d-sprite",0],"5":["effects/builtin-3d-particle",0],"6":["effects/builtin-3d-trail",0],"7":["effects/builtin-clear-stencil",0],"8":["effects/builtin-unlit",0],"9":["materials/builtin-2d-base",1],"10":["materials/builtin-2d-graphics",1],"11":["materials/builtin-2d-gray-sprite",1],"12":["materials/builtin-2d-label",1],"13":["materials/builtin-2d-spine",1],"14":["materials/builtin-2d-sprite",1],"15":["materials/builtin-3d-particle",1],"16":["materials/builtin-3d-trail",1],"17":["materials/builtin-clear-stencil",1],"18":["materials/builtin-unlit",1]},"types":["cc.EffectAsset","cc.Material"],"uuids":["30aC+Hnw1PF4pEcoY3kUYb","14TDKXr2NJ6LjvHPops74o","f1h0LXVtJOta5JLZ1xCzfI","0ek66qC1NOQLjgYmi04HvX","28dPjdQWxEQIG3VVl1Qm6T","82migssElAGb04Ws6NimQX","2afAA24LNP4YmYiaVLiivs","c0BAyVxX9JzZy8EjFrc9DU","6dkeWRTOBGXICfYQ7JUBnG","6fgBCSDDdPMInvyNlggls2","a1U5RdJRFMFL57BdJC9H1X","3ae7efMv1CLq2ilvUY/tQi","e0LYfU5ZlNFoAB4UiRrGUG","7a/QZLET9IDreTiBfRn2PD","ecpdLyjvZBwrvm+cedCcQy","43L6CczwNM/6GGmCYEQIoH","46bU+b5fROqIXVPG6aZWWK","cffgu4qBxEqa150o1DmRAy","2aKWBXJHxKHLvrBUi2yYZQ","60AwGqM1dKELCGhPAR+jK6","02delMVqdBD70a/HSD99FK"],"scenes":{},"redirect":[],"deps":[],"packs":{"0b6c4470e":[20,3,1,4,18,6,0,11,15,16,19,8,9,13,5,10,7,17,12,14,2]},"name":"internal","importBase":"import","nativeBase":"native","debug":false,"isZip":false,"encrypted":true}

BIN
build/jsb-link/assets/main/index.jsc


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
build/jsb-link/assets/resources/config.json


BIN
build/jsb-link/frameworks/runtime-src/proj.android-studio/.idea/caches/build_file_checksums.ser


+ 17 - 42
build/jsb-link/frameworks/runtime-src/proj.android-studio/.idea/modules/app/app-kxnly.iml

@@ -266,10 +266,12 @@
     </content>
     <orderEntry type="jdk" jdkName="Android API 29 Platform" jdkType="Android SDK" />
     <orderEntry type="sourceFolder" forTests="false" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/gson-2.8.4.jar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/umeng/umeng-common-9.4.0.jar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/umeng/umeng-game-9.2.0+G.jar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/umeng/utdid4all-1.5.2.1-proguard.jar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizu/ipaynow_mz_onlywechat_v2.0.0.jar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizu/MzOfflineGameSDK_2.4.0_P.jar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizu/replugin-host-lib.jar" level="project" />
     <orderEntry type="library" name="Gradle: C./CocosDashboard/resources/.editors/Creator/2.4.5/resources/cocos2d-x/cocos/platform/android/java/libs/com.android.vending.expansion.zipfile.jar" level="project" />
     <orderEntry type="library" name="Gradle: C./CocosDashboard/resources/.editors/Creator/2.4.5/resources/cocos2d-x/cocos/platform/android/java/libs/okhttp-3.12.7.jar" level="project" />
     <orderEntry type="library" name="Gradle: C./CocosDashboard/resources/.editors/Creator/2.4.5/resources/cocos2d-x/cocos/platform/android/java/libs/okio-1.15.0.jar" level="project" />
@@ -277,40 +279,6 @@
     <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-common:2.0.0@jar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.arch.core:core-common:2.0.0@jar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.annotation:annotation:1.0.0@jar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/anythink_cocosjs_bridge.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_banner.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_china_core.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_core.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_interstitial.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_native.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_network_baidu.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_network_gdt.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_network_kuaishou.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_network_mintegral_china.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_network_pangle_china.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_network_sigmob.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_rewardvideo.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/anythink_splash.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/Baidu_MobAds_SDK-release_v9.16.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/GDTSDK.unionNormal.4.410.1280.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/kssdk-ad--3.3.15-publishRelease-4533d8764.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_chinasame.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_interstitial.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_interstitialvideo.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_mbbanner.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_mbbid.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_mbjscommon.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_mbnative.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_mbnativeadvanced.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_mbsplash.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_nativeex.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_playercommon.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_reward.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_videocommon.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/mbridge_videojs.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/open_ad_sdk_4.0.0.6.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/tramini_sdk.aar" level="project" />
-    <orderEntry type="library" name="Gradle: ./app/libs/topon/libs/windAd-3.3.4.aar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/oaid/oaid_sdk_1.0.25.aar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/thinkingdata/ThinkingSDK.aar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/umeng/umeng-abtest-v1.0.0.aar" level="project" />
@@ -318,17 +286,22 @@
     <orderEntry type="library" name="Gradle: ./app/libs/aliRisk/Android-AliyunDevice-10017.aar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/YSDK/ysdkshell.aar" level="project" />
     <orderEntry type="library" name="Gradle: ./app/libs/YSDK/YSDK_Android_1.8.1_79033d3d.aar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizuAd/Baidu_MobAds_SDK-v5.8.7-release.aar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizuAd/GDTSDK.unionNoPlugin.4.270.1140.aar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizuAd/meizu-ads-2.8.1.2-release.aar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizuAd/meizu-ads-debugger-2.8.1.2-release.aar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizuAd/open_ad_sdk.aar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizuAd/uniplay-sdk-6.2.7-release.aar" level="project" />
+    <orderEntry type="library" name="Gradle: ./app/libs/meizuAd/windAd-2.20.0-M.aar" level="project" />
     <orderEntry type="library" name="Gradle: com.google.android.material:material:1.0.0@aar" level="project" />
-    <orderEntry type="library" name="Gradle: androidx.appcompat:appcompat:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.multidex:multidex:2.0.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: androidx.appcompat:appcompat:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.fragment:fragment:1.0.0@aar" level="project" />
-    <orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.recyclerview:recyclerview:1.0.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-ui:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-utils:1.0.0@aar" level="project" />
-    <orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.transition:transition:1.0.0@aar" level="project" />
-    <orderEntry type="library" name="Gradle: androidx.loader:loader:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.viewpager:viewpager:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.coordinatorlayout:coordinatorlayout:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.drawerlayout:drawerlayout:1.0.0@aar" level="project" />
@@ -336,16 +309,18 @@
     <orderEntry type="library" name="Gradle: androidx.customview:customview:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.swiperefreshlayout:swiperefreshlayout:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.asynclayoutinflater:asynclayoutinflater:1.0.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: androidx.loader:loader:1.0.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.core:core:1.0.0@aar" level="project" />
-    <orderEntry type="library" name="Gradle: androidx.versionedparcelable:versionedparcelable:1.0.0@aar" level="project" />
-    <orderEntry type="library" name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.cardview:cardview:1.0.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: androidx.versionedparcelable:versionedparcelable:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-runtime:2.0.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: androidx.interpolator:interpolator:1.0.0@aar" level="project" />
+    <orderEntry type="library" name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.documentfile:documentfile:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.print:print:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-viewmodel:2.0.0@aar" level="project" />
-    <orderEntry type="library" name="Gradle: androidx.interpolator:interpolator:1.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata:2.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata-core:2.0.0@aar" level="project" />
     <orderEntry type="library" name="Gradle: androidx.arch.core:core-runtime:2.0.0@aar" level="project" />

+ 5 - 5
build/jsb-link/frameworks/runtime-src/proj.android-studio/app/AndroidManifest.xml

@@ -117,11 +117,11 @@
 
         <!-- source file: china/network_sdk/baidu/AndroidManifest.xml -->
 
-        <!-- 开屏广告 -->
-        <activity
-            android:name="org.cocos2dx.javascript.thirdSdk.ad.SplashAdShowActivity"
-            android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen"
-            android:configChanges="keyboardHidden|orientation|keyboard|smallestScreenSize|screenSize|screenLayout"/>
+<!--        &lt;!&ndash; 开屏广告 &ndash;&gt;-->
+<!--        <activity-->
+<!--            android:name="org.cocos2dx.javascript.thirdSdk.ad.SplashAdShowActivity"-->
+<!--            android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen"-->
+<!--            android:configChanges="keyboardHidden|orientation|keyboard|smallestScreenSize|screenSize|screenLayout"/>-->
 
         <!-- 安装apk -->
         <provider

+ 10 - 5
build/jsb-link/frameworks/runtime-src/proj.android-studio/app/build.gradle

@@ -167,13 +167,13 @@ dependencies {
     //微信SDK(自动集成)
 //    api 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'
 
-    //聚合SDK(手动导入SDK包)
-    api 'androidx.appcompat:appcompat:1.0.0' //Gradle中要补充Support v7插件的引入,否则会集成失败
-    api fileTree(include: ['*.jar','*.aar'], dir: 'libs/topon')
-    api fileTree(include: ['*.jar','*.aar'], dir: 'libs/topon/libs')
+//    //聚合SDK(手动导入SDK包)
+//    api 'androidx.appcompat:appcompat:1.0.0' //Gradle中要补充Support v7插件的引入,否则会集成失败
+//    api fileTree(include: ['*.jar','*.aar'], dir: 'libs/topon')a
+//    api fileTree(include: ['*.jar','*.aar'], dir: 'libs/topon/libs')
     api 'com.google.android.material:material:1.0.0'//从v5.6.2版本开始,如果有聚合快手的v2.7.2及以上版本需要添加此依赖
     implementation 'androidx.multidex:multidex:2.0.0'
-    //应对接入后发布报single dex相关错误,defaultConfig中需同步设置multiDexEnabled true
+//    //应对接入后发布报single dex相关错误,defaultConfig中需同步设置multiDexEnabled true
 
     //OaidSDK(手动导入SDK包)
     api fileTree(include: ['*.jar','*.aar'], dir: 'libs/oaid')
@@ -191,4 +191,9 @@ dependencies {
 //    implementation fileTree(dir: 'libs/ysdk', include: ['*.jar', '*.aar'])
 //    implementation 'androidx.legacy:legacy-support-v4:1.0.0'
     api fileTree(include: ['*.jar','*.aar'], dir: 'libs/YSDK')
+
+    //meizu
+    api fileTree(include: ['*.jar', '*.so'], dir: 'libs/meizu')
+    //meizuAd
+    api fileTree(include: ['*.jar', '*.aar'], dir: 'libs/meizuAd')
 }

+ 130 - 0
build/jsb-link/frameworks/runtime-src/proj.android-studio/app/src/org/cocos2dx/javascript/AppActivity.java

@@ -24,6 +24,7 @@ THE SOFTWARE.
 ****************************************************************************/
 package org.cocos2dx.javascript;
 
+import org.cocos2dx.javascript.thirdSdk.GameConstants;
 import org.cocos2dx.javascript.thirdSdk.ThirdSdkMgr;
 import org.cocos2dx.javascript.thirdSdk.thinkingdata.TDSDKMgr;
 import org.cocos2dx.javascript.util.DeviceUtil;
@@ -33,6 +34,7 @@ import org.cocos2dx.lib.Cocos2dxGLSurfaceView;
 import org.cocos2dx.lib.Cocos2dxJavascriptJavaBridge;
 
 import android.Manifest;
+import android.app.Activity;
 import android.content.IntentFilter;
 import android.content.pm.PackageManager;
 import android.net.Uri;
@@ -52,6 +54,11 @@ import androidx.core.content.FileProvider;
 
 
 import com.aries.kncdsf.mz.BuildConfig;
+import com.meizu.ads.AdSDK;
+import com.meizu.ads.cfg.MultiProcessFlag;
+import com.meizu.ads.rewardvideo.RewardVideoAd;
+import com.meizu.ads.rewardvideo.RewardVideoAdListener;
+import com.meizu.gamesdk.offline.core.MzGameCenterPlatform;
 import com.tencent.ysdk.api.YSDKApi;
 
 import java.io.File;
@@ -64,6 +71,9 @@ public class AppActivity extends Cocos2dxActivity {
     private int playTimeStart = 0;
     private int playTimeEnd = 0;
 
+    private RewardVideoAd mRewardVideoAd;
+    private final static String TAG = "mzAD";
+
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -91,6 +101,25 @@ public class AppActivity extends Cocos2dxActivity {
         IntentFilter filter = new IntentFilter();
         filter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
         registerReceiver(NetWorkStateMgr.getInstance(), filter);
+
+        MzGameCenterPlatform.onActivityCreate(this);
+
+// 设置多进程支持
+        MultiProcessFlag.setMultiProcess(true);
+
+        AdSDK.init(this, GameConstants.GAME_KEY, new AdSDK.InitCallback() {
+            @Override
+            public void onSuccess() {
+                // 初始化成功,可以正常使⽤⼴告
+                Log.d(TAG, "AdSDK 初始化成功 ");
+                loadVideo();
+            }
+            @Override
+            public void onError(int code, String message) {
+                // 初始化失败
+                Log.d(TAG, "AdSDK 初始化失败 ");
+            }
+        });
     }
 
 //    @Override
@@ -369,4 +398,105 @@ public class AppActivity extends Cocos2dxActivity {
         String timestamp = String.valueOf(date.getTime() / 1000);
         return Integer.valueOf(timestamp);
     }
+
+    /** 魅族广告相关 */
+    private static class VideoRewardVideoAdListener implements RewardVideoAdListener {
+
+        private Activity activity;
+        private String blockId;
+
+        VideoRewardVideoAdListener(AppActivity activity, String blockId) {
+            this.activity = activity;
+            this.blockId = blockId;
+        }
+
+        @Override
+        public void onAdLoaded() {
+            Log.v(TAG, "Video AD loaded successfully : " + blockId);
+        }
+
+        @Override
+        public void onNoAd(int code, String msg) {
+            Log.v(TAG, String.format("Failed to loadAd video AD, blockId=%s, errCode=%d, errMsg=%s ",  blockId, code, msg));
+            ThirdSdkMgr.appActivity.callToJsFail();
+        }
+
+        @Override
+        public void onAdShow() {
+            Log.v(TAG, "onAdShow, blockId => " + blockId);
+        }
+
+        @Override
+        public void onAdClicked() {
+            Log.v(TAG, "onAdClicked, blockId => " + blockId);
+        }
+
+        @Override
+        public void onAdClosed(boolean reward) {
+            Log.v(TAG, "onAdsDismissed, blockId=>," + blockId + " reward=>" + reward);
+            if(reward) {
+                ThirdSdkMgr.appActivity.callToJs();
+                Log.v(TAG, "可以发放奖励");
+            }
+            else {
+                ThirdSdkMgr.appActivity.callToJsCancel();
+            }
+        }
+
+        @Override
+        public void onAdError(int code, String msg) {
+            Log.v(TAG, "Video play error, blockId=> "+blockId+", code=> " + code + ", message=> " + msg);
+        }
+    }
+
+    private void loadVideo(){
+        if (mRewardVideoAd == null) {
+            mRewardVideoAd = new RewardVideoAd(this, GameConstants.GAME_ID, new VideoRewardVideoAdListener(this, GameConstants.GAME_ID));
+        }
+        mRewardVideoAd.loadAd();
+    }
+
+    public void showVideo(){
+        this.runOnUiThread(new Runnable() {
+            @Override
+            public void run() {
+                if (mRewardVideoAd != null && mRewardVideoAd.isReady()) {
+                    mRewardVideoAd.showAd();
+                } else {
+                    callToJsFail();
+                    Log.w(TAG, "激励视频广告尚未缓存就绪!");
+                }
+            }
+        });
+    }
+
+    public void callToJs(){
+        this.runOnGLThread(new Runnable() {
+            @Override
+            public void run() {
+                Cocos2dxJavascriptJavaBridge.evalString("window.JsbMgr.onVideoWatchEnd();");
+                Log.d("TTTTTTT", "callToJs ");
+            }
+        });
+    }
+
+    public void callToJsCancel(){
+        this.runOnGLThread(new Runnable() {
+            @Override
+            public void run() {
+                Cocos2dxJavascriptJavaBridge.evalString("window.JsbMgr.onWatchCancleEnd();");
+                Log.d("TTTTTTT", "callToJsCancel ");
+            }
+        });
+    }
+
+    public void callToJsFail(){
+        this.runOnGLThread(new Runnable() {
+            @Override
+            public void run() {
+                Cocos2dxJavascriptJavaBridge.evalString("window.JsbMgr.onWatchFailEnd();");
+                Log.d("TTTTTTT", "callToJsFail ");
+            }
+        });
+    }
 }

+ 6 - 2
build/jsb-link/frameworks/runtime-src/proj.android-studio/app/src/org/cocos2dx/javascript/thirdSdk/ThirdSdkMgr.java

@@ -10,7 +10,6 @@ import android.webkit.WebSettings;
 import android.webkit.WebView;
 
 import org.cocos2dx.javascript.AppActivity;
-import org.cocos2dx.javascript.thirdSdk.ad.SplashAdShowActivity;
 import org.cocos2dx.javascript.thirdSdk.aliRisk.AliRiskManager;
 import org.cocos2dx.javascript.thirdSdk.thinkingdata.TDSDKMgr;
 import org.cocos2dx.javascript.thirdSdk.umeng.UMSDKMgr;
@@ -224,7 +223,7 @@ public class ThirdSdkMgr {
     //显示开屏广告 ----------------------------------------------------------------------------------
     public static void showSplash(){
         Log.d("===[ThirdSdkMgr ","显示开屏广告");
-        ThirdSdkMgr.appActivity.startActivity(new Intent( ThirdSdkMgr.appActivity, SplashAdShowActivity.class));
+        //ThirdSdkMgr.appActivity.startActivity(new Intent( ThirdSdkMgr.appActivity, SplashAdShowActivity.class));
     }
 
     /** 打开微信 */
@@ -313,4 +312,9 @@ public class ThirdSdkMgr {
             }
         });
     }
+
+    public static void showVideo(){
+        Log.d("TTTTTTT", "showVideo ");
+        appActivity.showVideo();
+    }
 }

+ 0 - 194
build/jsb-link/frameworks/runtime-src/proj.android-studio/app/src/org/cocos2dx/javascript/thirdSdk/ad/SplashAdShowActivity.java

@@ -1,194 +0,0 @@
-package org.cocos2dx.javascript.thirdSdk.ad;
-
-import android.app.Activity;
-import android.content.pm.ActivityInfo;
-import android.content.res.Configuration;
-import android.os.Bundle;
-import android.util.Log;
-import android.view.ViewGroup;
-import android.widget.FrameLayout;
-
-import com.anythink.core.api.ATAdConst;
-import com.anythink.core.api.ATAdInfo;
-import com.anythink.core.api.ATMediationRequestInfo;
-import com.anythink.core.api.AdError;
-import com.anythink.splashad.api.ATSplashAd;
-import com.anythink.splashad.api.ATSplashAdListener;
-import com.anythink.splashad.api.IATSplashEyeAd;
-import com.aries.kncdsf.mz.BuildConfig;
-import com.aries.kncdsf.mz.R;
-
-
-import org.cocos2dx.javascript.thirdSdk.ThirdSdkMgr;
-
-import java.util.HashMap;
-import java.util.Map;
-
-
-public class SplashAdShowActivity extends Activity implements ATSplashAdListener {
-
-    ATSplashAd splashAd;
-    private String unitId = "";
-    private FrameLayout container;
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        unitId = BuildConfig.TOPON.split(",")[5];
-        setContentView(R.layout.splash_ad_show);
-
-//        String[] arr = BuildConfig.JL_TOPON.split(",");
-//        unitId = arr[arr.length - 1];
-//        String unitId = getIntent().getStringExtra("b5f8d40ea99cea");
-
-        container = findViewById(R.id.splash_ad_container);
-        ViewGroup.LayoutParams layoutParams = container.getLayoutParams();
-
-        Configuration cf = getResources().getConfiguration();
-        int ori = cf.orientation;
-
-        /**You should set size to the layout param.**/
-        if (ori == Configuration.ORIENTATION_LANDSCAPE) {
-            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
-            layoutParams.width = (int)(getResources().getDisplayMetrics().widthPixels * 0.9);
-            layoutParams.height = getResources().getDisplayMetrics().heightPixels;
-        } else if (ori == Configuration.ORIENTATION_PORTRAIT) {
-            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
-            layoutParams.width = getResources().getDisplayMetrics().widthPixels;
-            layoutParams.height = (int) (getResources().getDisplayMetrics().heightPixels * 0.85);
-        } else {
-            setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT);
-            layoutParams.width = getResources().getDisplayMetrics().widthPixels;
-            layoutParams.height = (int) (getResources().getDisplayMetrics().heightPixels * 0.85);
-        }
-
-        //v5.6.2新增,针对首次安装获取TopOn策略导致开屏广告加载超时,可传递各广告平台参数,直接发起请求
-        //请参考:https://docs.toponad.com/#/zh-cn/android/android_doc/android_sdk_splash_access?id=splash_timeout
-        ATMediationRequestInfo atMediationRequestInfo = null;
-
-        //Mintegral
-        //atMediationRequestInfo = new MintegralATRequestInfo(appid, appkey, placement_id, unitid);
-        //atMediationRequestInfo.setAdSourceId(mintegralTopOnAdsourceId);
-
-        //腾讯广告(Tencent Ads)
-        //atMediationRequestInfo = new GDTATRequestInfo(app_id, unit_id);
-        //atMediationRequestInfo.setAdSourceId(gdtTopOnAdsourceId);
-
-        //穿山甲(Pangle)
-        //atMediationRequestInfo = new TTATRequestInfo(app_id, slot_id, personalized_template);
-        //atMediationRequestInfo.setAdSourceId(pangleTopOnAdsourceId);
-
-        //Sigmob
-        //atMediationRequestInfo = new SigmobiATRequestInfo(app_id, app_key, placement_id);
-        //atMediationRequestInfo.setAdSourceId(sigmobTopOnAdsourceId);
-
-        //百度
-        //atMediationRequestInfo = new BaiduATRequestInfo(app_id, ad_place_id);
-        //atMediationRequestInfo.setAdSourceId(baiduTopOnAdsourceId);
-
-        //快手
-        //atMediationRequestInfo  = new KSATRequestInfo(app_id, position_id);
-        //atMediationRequestInfo.setAdSourceId(kuaishouTopOnAdsourceId);
-
-        //Admob
-        //atMediationRequestInfo = new AdmobATRequestInfo(app_id, unit_id, orientation);
-        //atMediationRequestInfo.setAdSourceId(admobTopOnAdsourceId);
-
-        //atMediationRequestInfo传入后,只针对首次请求开屏的情况生效,请详细阅读上方说明
-        splashAd = new ATSplashAd(this, unitId, atMediationRequestInfo, this, 5000);
-        //splashAd = new ATSplashAd(this, TopOnPlacementId, this);
-
-        Map<String,Object> localMap = new HashMap<>();
-        localMap.put(ATAdConst.KEY.AD_WIDTH, layoutParams.width);
-        localMap.put(ATAdConst.KEY.AD_HEIGHT, layoutParams.height);
-        splashAd.setLocalExtra(localMap);
-
-        if (splashAd.isAdReady()) {
-            Log.i("SplashAdShowActivity", "SplashAd is ready to show.");
-            splashAd.show(this, container);
-        } else {
-            Log.i("SplashAdShowActivity", "SplashAd isn't ready to show, start to request.");
-            splashAd.loadAd();
-        }
-    }
-
-    @Override
-    public void onAdLoadTimeout() {
-        Log.d("SplashAdShowActivity", "onAdLoadTimeout ");
-        jumpToMainActivity();
-    }
-
-    @Override
-    public void onAdLoaded(boolean var1) {
-        Log.d("SplashAdShowActivity", "onAdLoaded ");
-        splashAd.show(this, container);
-    }
-
-    @Override
-    public void onNoAdError(AdError adError) {
-        //注意:禁止在此回调中执行广告的加载方法进行重试,否则会引起很多无用请求且可能会导致应用卡顿
-        //AdError,请参考 https://docs.toponad.com/#/zh-cn/android/android_doc/android_test?id=aderror
-        Log.e("SplashAdShowActivity", "onNoAdError:" + adError.getFullErrorInfo());
-        jumpToMainActivity();
-    }
-
-    @Override
-    public void onAdShow(ATAdInfo atAdInfo) {
-        //ATAdInfo可区分广告平台以及获取广告平台的广告位ID等
-        //请参考 https://docs.toponad.com/#/zh-cn/android/android_doc/android_sdk_callback_access?id=callback_info
-        Log.d("SplashAdShowActivity", "onAdShow:\n" + atAdInfo.toString());
-        ThirdSdkMgr.updateSplashAdLog(unitId, atAdInfo.toString());
-    }
-
-    @Override
-    public void onAdClick(ATAdInfo atAdInfo) {
-        ThirdSdkMgr.clickSplash();
-    }
-
-    @Override
-    public void onAdDismiss(ATAdInfo atAdInfo, IATSplashEyeAd splashEyeAd) {
-        jumpToMainActivity();
-    }
-
-    boolean hasHandleJump = false;
-    boolean canJump;//是否可以跳转主页面,当开屏Activity处于后台时禁止跳转主页面
-
-    public void jumpToMainActivity() {
-
-        if (!canJump) {
-            canJump = true;
-            return;
-        }
-
-        if (!hasHandleJump) {
-            hasHandleJump = true;
-            finish();
-//            Toast.makeText(this, "start your MainActivity.", Toast.LENGTH_SHORT).show();
-        }
-    }
-
-    @Override
-    protected void onResume() {
-        super.onResume();
-
-        if (canJump) {
-            jumpToMainActivity();
-        }
-
-        canJump = true;
-    }
-
-    @Override
-    protected void onPause() {
-        super.onPause();
-
-        canJump = false;
-    }
-
-    @Override
-    protected void onDestroy() {
-        super.onDestroy();
-        if (splashAd != null) {
-            splashAd.onDestory();
-        }
-    }
-}

+ 8 - 1
build/jsb-link/frameworks/runtime-src/proj.android-studio/app/src/org/cocos2dx/javascript/thirdSdk/umeng/MyApplication.java

@@ -2,7 +2,12 @@ package org.cocos2dx.javascript.thirdSdk.umeng;
 
 import android.app.Application;
 
-public class MyApplication extends Application {
+import com.meizu.gamesdk.offline.core.MzGameApplication;
+import com.meizu.gamesdk.offline.core.MzGameCenterPlatform;
+
+import org.cocos2dx.javascript.thirdSdk.GameConstants;
+
+public class MyApplication extends MzGameApplication {
     @Override
     public void onCreate() {
         super.onCreate();
@@ -15,5 +20,7 @@ public class MyApplication extends Application {
         UMSDKMgr.getInstance().myApplication = this;
 
         UMSDKMgr.getInstance().init();
+
+        MzGameCenterPlatform.init(this, GameConstants.GAME_ID, GameConstants.GAME_KEY);
     }
 }

+ 15 - 6
build/jsb-link/js backups (useful for debugging)/main.index.js

@@ -2797,7 +2797,7 @@ cc._RF.push(e, "1466aRVSRRPbZv+MJLJVOZg", "AdSystem");
 Object.defineProperty(o, "__esModule", {
 value: !0
 });
-var n = t("../../game/data/GameData"), a = function() {
+var n = t("../../game/data/GameData"), a = t("./JsbSystem"), i = function() {
 function t(t) {
 this.adSdk = null;
 this.ifShowAd = !0;
@@ -2811,12 +2811,11 @@ this.adSdk = t;
 }
 t.prototype.init = function() {
 cc.sys.os == cc.sys.OS_ANDROID ? this.ifShowAd = "1" == gData.gameData.configs.ServerConfig.ifShowAd : this.ifShowAd = !1;
-this.adSdk.initSDK();
 };
 t.prototype.watchAd = function(t) {
 if (!this.isAdCooling()) {
 this.videoAdcallBack = t;
-this.ifShowAd ? cc.sys.platform != cc.sys.WECHAT_GAME && (cc.sys.os == cc.sys.OS_ANDROID ? this.adSdk.showVideo() : cc.sys.os == cc.sys.OS_IOS && jsb.reflection.callStaticMethod("AppController", "showVideo", "")) : this.wacthAdSuccess();
+this.ifShowAd ? cc.sys.platform != cc.sys.WECHAT_GAME && (cc.sys.os == cc.sys.OS_ANDROID ? a.default.showVideo() : cc.sys.os == cc.sys.OS_IOS && jsb.reflection.callStaticMethod("AppController", "showVideo", "")) : this.wacthAdSuccess();
 }
 };
 t.prototype.watchAdFail = function() {
@@ -2878,10 +2877,11 @@ this.adSdk.showInter(t);
 };
 return t;
 }();
-o.default = a;
+o.default = i;
 cc._RF.pop();
 }, {
-"../../game/data/GameData": "GameData"
+"../../game/data/GameData": "GameData",
+"./JsbSystem": "JsbSystem"
 } ],
 AliRiskManager: [ function(t, e, o) {
 "use strict";
@@ -13888,7 +13888,7 @@ this.span = 6e4 * gData.gameData.ProductionRecovery;
 gData.gameData.checkTaskFinishUnLock();
 this.registerCallBack();
 console.log("===[Jsbsystem 显示开屏广告================================");
-mk.ad.ifShowAd && s.default.showSplash();
+mk.ad.ifShowAd;
 };
 e.prototype.start = function() {
 this.initMusic();
@@ -17366,6 +17366,15 @@ sessionDuration: t
 };
 mk.http.sendData("activateLog", e);
 };
+t.showVideo = function() {
+this.callStaticMethod(this._JSB_ANDROID_PATH, "showVideo", "()V");
+};
+t.wacthAdSuccess = function() {
+mk.ad.wacthAdSuccess();
+};
+t.watchAdFail = function() {
+mk.ad.watchAdFail();
+};
 t._JSB_ANDROID_PATH = "org/cocos2dx/javascript/thirdSdk/ThirdSdkMgr";
 t._JSB_IOS_PATH = "ThirdSdkMgr";
 t._JSB_ANDROID_PATH_JSDK = "org/cocos2dx/javascript/thirdSdk/ysdk/YSDKMgr";

+ 2 - 2
packages-hot-update/cfg.json

@@ -10,7 +10,7 @@
         "https://xcx-box.oss-cn-hangzhou.aliyuncs.com/hotgame/kxnlyTest/baseRemote/",
         "https://xcx-box.oss-cn-hangzhou.aliyuncs.com/hotgame/kxnlyJsb/baseRemote/"
     ],
-    "buildTime": 1633936568454,
-    "genTime": 1633936568454,
+    "buildTime": 1633939152512,
+    "genTime": 1633939152512,
     "genVersion": null
 }

Некоторые файлы не были показаны из-за большого количества измененных файлов