抖音很火的解压小游戏,完整代码分享。有兴趣的可以试着写一下。

1.  index

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>召唤神龙</title><!--http://www.html5rocks.com/en/mobile/mobifying/--><meta name="viewport"content="width=device-width,user-scalable=no,initial-scale=1, minimum-scale=1,maximum-scale=1"/><!--https://developer.apple.com/library/safari/documentation/AppleApplications/Reference/SafariHTMLRef/Articles/MetaTags.html--><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"><meta name="format-detection" content="telephone=no"><!-- force webkit on 360 --><meta name="renderer" content="webkit"/><meta name="force-rendering" content="webkit"/><!-- force edge on IE --><meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/><meta name="msapplication-tap-highlight" content="no"><!-- force full screen on some browser --><meta name="full-screen" content="yes"/><meta name="x5-fullscreen" content="true"/><meta name="360-fullscreen" content="true"/><!-- force screen orientation on some browser --><meta name="screen-orientation" content=""/><meta name="x5-orientation" content=""><!--fix fireball/issues/3568 --><!--<meta name="browsermode" content="application">--><meta name="x5-page-mode" content="app"><!--<link rel="apple-touch-icon" href=".png" />--><!--<link rel="apple-touch-icon-precomposed" href=".png" />--><!-- <script>pushHistory();window.addEventListener("popstate", function(e) {}, false);function pushHistory() {var state = {title: "",url: window.location.href};window.history.pushState(state, state.title, state.url);}</script> --><link rel="stylesheet" type="text/css" href="style-mobile.css"/></head>
<!-- <body style="margin: 0; background: #ddd;" align="center"> --><div style="align:center;display: none"><img src="res/share.png" width="10%" /></div><!-- <div id="canvasDiv" style="width:100%;height:100%;"></div>  --><canvas id="GameCanvas" oncontextmenu="event.preventDefault()" tabindex="0" ></canvas><video id="contentElement" style = "display:none;position: absolute;top:0px;left: 0px;"><!-- <source src="http://rmcdn.2mdn.net/Demo/vast_inspector/android.mp4"></source><source src="http://rmcdn.2mdn.net/Demo/vast_inspector/android.webm"></source> --></video> <div id="block-Box" style="display:block;width:100%;height:100%;"></div><div id="adContainer" style="display:none;position: absolute;top:0px;left: 0px;width:100%;height:100%;z-index:999;"></div> <div id="loadingText"style="width:100%;display: none;text-align:center;position:absolute;top:45%;z-index:2;font-size:20px;color:#f99f0a">loading......0%
</div><div id="splash"><!-- <div class="progress-bar stripes"> --><!-- <span style="width: 0%"></span> --><!-- </div> --></div><div id="loadingImg" style="top:45%;width: 100%;position:absolute; "><img src="res/loading.gif" width="7%" height="7%" /></div><!-- 判断浏览器是否屏蔽广告 --><script src="http://demo.jb51.net/js/2015/adview_pic_cpc_cpm_cpa_guanggao_gg_ads_300x250.js" type="text/javascript"></script> <script type="text/javascript">var killAdT = typeof(killads);// <!-- if (typeof(killads)=='undefined'){ -->//     <!-- alert('广告被过滤'); -->//  <!-- } --></script><!--<div align="center" style="font-size: 10px;color: dimgrey">advertisement</div>--><script type="text/javascript" src="//imasdk.googleapis.com/js/sdkloader/ima3.js"></script>
<script type="text/javascript" src="ads.js"></script><script src="src/settings.js" charset="utf-8"></script><script type="text/javascript">var preloader;var adCompleteFlag = false;var resCompleteFlag = false;var adEndComplete = false;var resEndComplete = false;judgeLanTitle();function judgeLanTitle(){//        console.log("window.navigator.language",window.navigator.language);if( window.navigator.language=="zh-CN" ||window.navigator.language=="zh-cn"){document.title = "召唤神龙";}else  if(window.navigator.language == "zh-TW" ){document.title = "召喚神龍";}else  if(window.navigator.language == "zh-HK" ){document.title = "召喚神龍";}else  if(window.navigator.language == "ko-KR"){document.title = "신용 소환";}else  if(window.navigator.language == "ja-JP"){document.title = "神竜を召喚する";}else  if(window.navigator.language == "th-TH"){document.title = "เรียกมังกร";}else{document.title = "Summon the Dragon";}}var loadintT = document.getElementById("loadingText");var loadintGif = document.getElementById("loadingImg")setTimeout(function () {loadintGif.remove();loadintT.style.display = ""updateLabView(0.1);}, 1 * 1000)window.timer = null;window.tempSeconds = 1;window.loadData = {};loadData.completedCount = 0;loadData.totalCount = 0;onload();function onload()  {var winHeight = document.documentElement.clientHeight;document.getElementById("canvasDiv").style.height = winHeight+"px";}; window.onload =function() {document.getElementById("block-Box").style.display = "none";}function updateLabView(t) {if (timer != null) {clearInterval(timer);}timer = setInterval(function () {tempSeconds++;actualTotal();var loadintT = document.getElementById("loadingText")if(!loadintT){// clearInterval(timer);return;}loadintT.innerHTML = 'loading......' + parseInt(tempSeconds) + '%';switch (tempSeconds) {case 20:updateLabView(0.2);break;case 40:updateLabView(0.3);break;case 60:updateLabView(0.4);break;case 96:updateLabView(5);break;case 97:updateLabView(10);break;case 98:updateLabView(50);break;case 99:updateLabView(100);break;default:if (tempSeconds >= 80 && tempSeconds < 96) {updateLabView(t + 0.1);}break;}if (tempSeconds > 100) {clearInterval(timer);tempSeconds = 100loadintT.innerHTML = 'loading......' + parseInt(tempSeconds) + '%';}}, t * 1000);}function actualTotal() {var percent = parseInt(100 * loadData.completedCount / loadData.totalCount);if (percent > tempSeconds && loadData.totalCount > 1) {tempSeconds = percent;}}function finishLoad(){clearInterval(timer); loadintT.innerHTML = 'loading......100' + '%';setTimeout(function(){loadintT.remove();},0.1 * 1000);}
</script><script src="src/settings.js" charset="utf-8"></script><script src="main.js" charset="utf-8"></script><script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- 水工厂 -->
<!-- <ins class="adsbygoogle"style="position:absolute;border-top:5px #f0f0f1 solid;background:#f0f0f1;bottom:0px;z-index:1000;display:inline-block;min-width:320px;max-width:970px;width:100%;height:60px"data-ad-client="ca-pub-3932234672445376"data-ad-slot="1751302463"></ins><script>var ads = document.getElementsByClassName('adsbygoogle')[0];if (document.body.clientHeight > 700){ads.style.height = 80+'px';}else{ads.style.height = 60+'px';}
</script><script>function ShowBannerAD(){(adsbygoogle = window.adsbygoogle || []).push({});}
</script> -->
<!-- 果盘合合 -->
<script asyncdata-ad-client="ca-pub-3932234672445376"data-ad-channel="1828757928"data-ad-frequency-hint="15s"src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js">
</script><script>window.adsbygoogle = window.adsbygoogle || [];
const adBreak =  function(o) {adsbygoogle.push(o);}
</script><script type="text/javascript">(function () {// open web debugger consoleif (typeof VConsole !== 'undefined') {window.vConsole = new VConsole();}var debug = window._CCSettings.debug;var splash = document.getElementById('splash');splash.style.display = 'block';function loadScript (moduleName, cb) {function scriptLoaded () {document.body.removeChild(domScript);domScript.removeEventListener('load', scriptLoaded, false);cb && cb();};var domScript = document.createElement('script');domScript.async = true;domScript.src = moduleName;domScript.addEventListener('load', scriptLoaded, false);document.body.appendChild(domScript);}loadScript(debug ? 'cocos2d-js.js' : 'cocos2d-js-min.js', function () {if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) {loadScript(debug ? 'physics.js' : 'physics-min.js', window.boot);}else {window.boot();}});
})();</script>
</body>
</html>

2. ads.js

var videoContent = document.getElementById('contentElement');var adDisplayContainer =new google.ima.AdDisplayContainer(document.getElementById('adContainer'),videoContent);
// Must be done as the result of a user action on mobile
adDisplayContainer.initialize();// Re-use this AdsLoader instance for the entire lifecycle of your page.
var adsLoader = new google.ima.AdsLoader(adDisplayContainer);// Add event listeners
adsLoader.addEventListener(google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED,onAdsManagerLoaded,false);
adsLoader.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,onAdError,false);function onAdError(adErrorEvent) {console.log("adError");document.getElementById("adContainer").style.display = "none";var GameConfig = __require("GameConfig");if(GameConfig.playNum == 0){adCompleteFlag = true;if(adCompleteFlag && resCompleteFlag){adCompleteFlag = false;var launchScene = GameConfig.launchScene;var Bros = GameConfig.Bros;var caS = GameConfig.caS;cc.director.loadScene(launchScene, null,function () {adCompleteFlag = false;if (Bros) {// show canvascaS = '';var div = document.getElementById('GameDiv');if (div) {div.style.backgroundImage = '';}}cc.loader.onProgress = null;console.log('Success to load scene: ' + launchScene);});}}adEndComplete = true;if(adEndComplete && resEndComplete){adEndComplete = false;console.log("indexOverErr");var MainManger = __require("MainManage");MainManger.showGameEndLayer();}// Handle the error logging and destroy the AdsManagerconsole.log(adErrorEvent.getError());adsManager.destroy();
}// An event listener to tell the SDK that our content video
// is completed so the SDK can play any post-roll ads.
var contentEndedListener = function() {adsLoader.contentComplete();};
videoContent.onended = contentEndedListener;// Request video ads.
var preloader = new google.ima.AdsRequest();
preloader.adTagUrl = 'https://googleads.g.doubleclick.net/pagead/ads?ad_type=video_image&client=ca-games-pub-8708616103041212&description_url=http%3A%2F%2Fwww.vsane.com&videoad_start_delay=-1&hl=zh_CN&max_ad_duration=15000';
// Specify the linear and nonlinear slot sizes. This helps the SDK to
// select the correct creative if multiple are returned.
preloader.linearAdSlotWidth = 640;
preloader.linearAdSlotHeight = 400;
preloader.nonLinearAdSlotWidth = 640;
preloader.nonLinearAdSlotHeight = 400;// showMyAds();function showMyAds() {// alert("showMy");if (typeof(killads)=='undefined'){// alert('广告被过滤');console.log("AdNo");adEndComplete = false;var MainManger = __require("MainManage");MainManger.showGameEndLayer();}else{var winHeight = document.documentElement.clientHeight;if (document.body.clientHeight > 700){document.getElementById("adContainer").style.height = winHeight-85+"px";}else{document.getElementById("adContainer").style.height = winHeight-65+"px";}// document.getElementById("adContainer").style.height = winHeight-60+"px";document.getElementById("adContainer").style.display = "block";adsLoader.requestAds(preloader);}
}function onAdsManagerLoaded(adsManagerLoadedEvent) {console.log("ADLoad");adCompleteFlag = true;// document.getElementById("adContainer").style.display = "block";// Get the ads manager.adsManager = adsManagerLoadedEvent.getAdsManager(videoContent);  // See API reference for contentPlayback// Add listeners to the required events.adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR,onAdError);adsManager.addEventListener(google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED,onContentPauseRequested);adsManager.addEventListener(google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED,onContentResumeRequested);var o = document.getElementById("adContainer");
var h = o.offsetHeight; //高度
var w = o.offsetWidth; //宽度try {// Initialize the ads manager. Ad rules playlist will start at this time.adsManager.init(w, h, google.ima.ViewMode.FULLSCREEN);// Call start to show ads. Single video and overlay ads will// start at this time; this call will be ignored for ad rules, as ad rules// ads start when the adsManager is initialized.adsManager.start();} catch (adError) {// An error may be thrown if there was a problem with the VAST response.// Play content here, because we won't be getting an ad.// videoContent.play();}
}function onContentPauseRequested() {// This function is where you should setup UI for showing ads (e.g.// display ad timer countdown, disable seeking, etc.)videoContent.removeEventListener('ended', contentEndedListener);videoContent.pause();}//广告结束的时候调用的函数
function onContentResumeRequested() {console.log("ADLoadComplete",resEndComplete);var GameConfig = __require("GameConfig");console.log("IndexMainManger",GameConfig.launchScene, GameConfig.Bros,GameConfig.caS);if(GameConfig.playNum == 1){adCompleteFlag = true;if(adCompleteFlag && resCompleteFlag){var launchScene = GameConfig.launchScene;var Bros = GameConfig.Bros;var caS = GameConfig.caS;cc.director.loadScene(launchScene, null,function () {adCompleteFlag = false;if (Bros) {// show canvasvar canvas = document.getElementById('GameCanvas');canvas.style.visibility = '';var div = document.getElementById('GameDiv');if (div) {div.style.backgroundImage = '';}}cc.loader.onProgress = null;console.log('Success to load scene1: ' + launchScene);});}}adEndComplete = true;if(adEndComplete && resEndComplete){adEndComplete = false;console.log("indexOverErr");var MainManger = __require("MainManage");MainManger.showGameEndLayer();}// This function is where you should ensure that your UI is ready// to play content.document.getElementById("adContainer").style.display = "none";// videoContent.addEventListener('ended', contentEndedListener);// videoContent.play();}function noAdGoToScene(){var GameConfig = __require("GameConfig");console.log("IndexMainMangerMaing",GameConfig.launchScene, GameConfig.Bros,GameConfig.caS);var launchScene = GameConfig.launchScene;var Bros = GameConfig.Bros;var caS = GameConfig.caS;cc.director.loadScene(launchScene, null,function () {adCompleteFlag = false;if (Bros) {// show canvasvar canvas = document.getElementById('GameCanvas');canvas.style.visibility = '';var div = document.getElementById('GameDiv');if (div) {div.style.backgroundImage = '';}}cc.loader.onProgress = null;console.log('Success to load scene1Main: ' + launchScene);});}

3.mian.js

var loadingNum = 0;
window.boot = function () {var settings = window._CCSettings;window._CCSettings = undefined;var onProgress = null;var RESOURCES = cc.AssetManager.BuiltinBundleName.RESOURCES;var INTERNAL = cc.AssetManager.BuiltinBundleName.INTERNAL;var MAIN = cc.AssetManager.BuiltinBundleName.MAIN;function setLoadingDisplay () {// Loading splash scenevar splash = document.getElementById('splash');var loadintT = document.getElementById("loadingText")// var progressBar = splash.querySelector('.progress-bar span');cc.loader.onProgress = function (finish, total, item) {loadData.completedCount = finish;loadData.totalCount = total;var percent = 100 * finish / total;if(loadingNum >= 1 && total > 1){if(percent.toFixed(0) >= 100){loadintT.innerHTML = 'loading......100' + '%';clearInterval(timer); setTimeout(function(){loadintT.remove();},0.1 * 1000);}}loadingNum++;};splash.style.display = 'block';// progressBar.style.width = '0%';cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () {splash.style.display = 'none';});}var onStart = function () {cc.view.enableRetina(true);cc.view.resizeWithBrowserSize(true);if (cc.sys.isBrowser) {setLoadingDisplay();}if (cc.sys.isMobile) {if (settings.orientation === 'landscape') {cc.view.setOrientation(cc.macro.ORIENTATION_LANDSCAPE);}else if (settings.orientation === 'portrait') {cc.view.setOrientation(cc.macro.ORIENTATION_PORTRAIT);}// cc.view.enableAutoFullScreen([//     cc.sys.BROWSER_TYPE_BAIDU,//     cc.sys.BROWSER_TYPE_BAIDU_APP,//     cc.sys.BROWSER_TYPE_WECHAT,//     cc.sys.BROWSER_TYPE_MOBILE_QQ,//     cc.sys.BROWSER_TYPE_MIUI,//     cc.sys.BROWSER_TYPE_HUAWEI,//     cc.sys.BROWSER_TYPE_UC,// ].indexOf(cc.sys.browserType) < 0);cc.view.enableAutoFullScreen(false);}// Limit downloading max concurrent task to 2,// more tasks simultaneously may cause performance draw back on some android system / browsers.// You can adjust the number based on your own test result, you have to set it before any loading process to take effect.if (cc.sys.isBrowser && cc.sys.os === cc.sys.OS_ANDROID) {cc.assetManager.downloader.maxConcurrency = 2;cc.assetManager.downloader.maxRequestsPerFrame = 2;}var launchScene = settings.launchScene;var bundle = cc.assetManager.bundles.find(function (b) {return b.getSceneInfo(launchScene);});var canvas;if (cc.sys.isBrowser) {canvas = document.getElementById('GameCanvas');}var MainManger = __require("MainManage");MainManger.init(launchScene,cc.sys.isBrowser,canvas.style.visibility);// bundle.loadScene(launchScene, null, onProgress,//     function (err, scene) {//         if (!err) {//             cc.director.runSceneImmediate(scene);//             if (cc.sys.isBrowser) {//                 // show canvas//                 var canvas = document.getElementById('GameCanvas');//                 canvas.style.visibility = '';//                 var div = document.getElementById('GameDiv');//                 if (div) {//                     div.style.backgroundImage = '';//                 }//                 console.log('Success to load scene: ' + launchScene);//             }//         }//     }// );};var option = {id: 'GameCanvas',debugMode: settings.debug ? cc.debug.DebugMode.INFO : cc.debug.DebugMode.ERROR,showFPS: settings.debug,frameRate: 60,groupList: settings.groupList,collisionMatrix: settings.collisionMatrix,};cc.assetManager.init({ bundleVers: settings.bundleVers,remoteBundles: settings.remoteBundles,server: settings.server});var bundleRoot = [INTERNAL];settings.hasResourcesBundle && bundleRoot.push(RESOURCES);var count = 0;function cb (err) {if (err) return console.error(err.message, err.stack);count++;if (count === bundleRoot.length + 1) {cc.assetManager.loadBundle(MAIN, function (err) {if (!err) cc.game.run(option, onStart);});}}cc.assetManager.loadScript(settings.jsList.map(function (x) { return 'src/' + x;}), cb);for (var i = 0; i < bundleRoot.length; i++) {cc.assetManager.loadBundle(bundleRoot[i], cb);}
};if (window.jsb) {var isRuntime = (typeof loadRuntime === 'function');if (isRuntime) {require('src/settings.js');require('src/cocos2d-runtime.js');if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) {require('src/physics.js');}require('jsb-adapter/engine/index.js');}else {require('src/settings.js');require('src/cocos2d-jsb.js');if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) {require('src/physics.js');}require('jsb-adapter/jsb-engine.js');}cc.macro.CLEANUP_IMAGE_CACHE = true;window.boot();
}

抖音很火的召唤神龙的小游戏完整代码-召唤神龙相关推荐

  1. 2021-10-08 vue.js实现抖音很火八卦时间数字罗盘屏保壁纸

    vue.js实现抖音很火八卦时间数字罗盘屏保壁纸 代码如下. <!DOCTYPE html> <html><head> <meta charset=" ...

  2. 年龄测试计算器软件,抖音很火的年龄计算器

    抖音很火的年龄计算器是一款非常受大家欢迎的应用,相信很多的小伙伴们都已经在网上看到了,几乎到了上热搜的位置,为啥这么火呢,其实小编觉得可能是因为现在大批量的90后们已经在开始感叹时间的飞速流逝了,所以 ...

  3. 魔性计时器html6,最近抖音很火的6首BGM,太有魔性了!

    bing娱乐热歌榜单,每周排行最热7首中文歌曲,每周四更新(点头像查看文章).今天小编就为大家整理了最近抖音很火的6首BGM,太有魔性了!我们一起来看看吧! 第一首:<我们不一样>,歌手: ...

  4. 用计算机语言写结婚祝福语,抖音很火的一到10结婚祝福语

    抖音很火的一到10结婚祝福语 2020-11-13 16:13:07 结婚祝福除了早生贵子就是百年好合,这次来点不一样的,下面就来看看抖音很火的一到10结婚祝福语! 一.抖音很火的一到10结婚祝福语 ...

  5. wpf 模拟抖音很火的罗盘时钟,附源码,解压就能跑

    wpf 模拟抖音很火的罗盘时钟,附源码,解压就能跑 前端时间突然发现,抖音火了个壁纸,就是黑底蕾丝~~~  错错错,黑底白字的罗盘时钟! 作为程序员的我,也觉得很新颖,所以想空了研究下,这不,空下来了 ...

  6. wpf 模拟抖音很火的罗盘时钟,附源码,下载就能跑

    wpf 模拟抖音很火的罗盘时钟,附源码 前端时间突然发现,抖音火了个壁纸,就是黑底蕾丝~~~  错错错,黑底白字的罗盘时钟! 作为程序员的我,也觉得很新颖,所以想空了研究下,这不,空下来了就用wpf, ...

  7. 钉钉windows端多开软件_抖音很火的备忘录软件是什么?比较火的备忘录便签软件...

    抖音是很多年轻人都比较喜欢使用的一款短视频APP,我们不但能够用它来娱乐打发时间,还可以从抖音的视频中接收咨询和学习.近期我在抖音上看到了不少人都在使用备忘录便签软件,抖音很火的备忘录软件是什么?比较 ...

  8. matplotlib-bilibili,抖音很火的动态数据视频自动生成(第四节)-视频,语音合成

    " matplotlib-bilibili,抖音很火的动态数据视频自动生成(第四节)-视频,语音自动合成" 还记得上一节中我们所提到的数据动态视频吗​?这次,为了让大家更加方便的制 ...

  9. 抖音表白整蛊HTML代码,抖音很火的弹窗表白整蛊怎么弄?抖音表白整蛊弹窗设置方法...

    最近抖音出了一种新玩法,就是弹窗表白整蛊,那抖音很火的弹窗表白整蛊是怎么弄的呢?一起来看看抖音表白整蛊弹窗设置方法吧. 1.直接在电脑上打开一个记事本 输入一下内容 asgbox("我知道你 ...

最新文章

  1. php 返回map,PHP Ds\Map get()用法及代码示例
  2. python学习第八讲,python中的数据类型,列表,元祖,字典,之字典使用与介绍
  3. aspx 判断字符串是否为decimal_python 经典面试题:判断字符串括号是否闭合{}[]()...
  4. python-字符串方法
  5. windows配置gvim高效率编程(cc++)带自动补全代码
  6. 助力在线教育,阿里云推出百万专项扶持基金计划
  7. 数据库查询·聚合分支格式化日期·思维导图要点误点(含示例)
  8. GPS测量中所涉及的时间系统
  9. 【果壳笔记】生物信息学——陈润生老师部分
  10. gps 数据解析-NMEA 0183协议
  11. ffmpeg中使用screen capture recorder录音的问题
  12. c语言程序设计判断是否是素数,C语言编程输入一个数判断是否为素数(质数)...
  13. 统计学基础——方差、协方差、标准差(标准偏差/均方差)、标准误、均方误差、均方根误差(标准误差)的区别
  14. android 实现冒泡动画,android 触摸事件冒泡动画效果
  15. dsp28335杂记1
  16. Android几种定时任务实现方式汇总
  17. clearcase命令收集
  18. CircuitJS 好玩实用电路仿真软件
  19. 基于部分卷积Pconv的图片修复
  20. 北大igem生物计算机,喜讯|北京大学iGEM团队在国际大赛中取得金牌

热门文章

  1. android高度比例布局,无处安放的AndroidTips:ConstraintLayout的比例布局
  2. RuntimeError: generator raised StopIteration
  3. Android Launcher或 ROM开发,系统级别的应用(系统功能),ROM裁剪
  4. 吾生也有涯,而知也无涯,以有涯随无涯,殆己
  5. BLM模型:解决问题的前提是定义问题
  6. Windows Server 2008 R2 自定义桌面 图标
  7. 计算机电源简单知识,基本知识:电脑电源工作流程以及电路图赏析
  8. MATLAB积分计算与积分变换
  9. 大厂秋招~华为荣耀字节腾讯美团滴滴
  10. 微信支付报错提示“商户号该产品权限未开通,请前往商户平台产品中心检查后重试...