{"_id":"@coolita-os/google-ima3-js-sdk","_rev":"6-e06ca252eb9b35feb708e2b5b6eae5ad","name":"@coolita-os/google-ima3-js-sdk","dist-tags":{"latest":"0.0.6"},"versions":{"0.0.1":{"name":"@coolita-os/google-ima3-js-sdk","version":"0.0.1","keywords":["google-ima3-js-sdk"],"author":{"name":"john"},"license":"MIT","_id":"@coolita-os/google-ima3-js-sdk@0.0.1","maintainers":[{"name":"coolita-os-developer","email":"1121898804@qq.com"},{"name":"xiao_yao_pai","email":"806620445@qq.com"}],"dist":{"shasum":"5e331bf52bf0266ff864618fa31d1a101e7ba5e4","tarball":"https://registry.npmjs.org/@coolita-os/google-ima3-js-sdk/-/google-ima3-js-sdk-0.0.1.tgz","fileCount":16,"integrity":"sha512-FtwbaaHAQxbV023OudFDx6NtmFSwyfLnHUFJIPtCb69A29CgYwJH3Bg6skdPXrNl7rtPRZevbHFwm7Qol0sSNg==","signatures":[{"sig":"MEUCIQDkrvlsvW2PnJd2Cp2kpGIx3vHR+2y7O1mSuarvt1LtdQIgH4Zn6I7Oxroh6flGrgK5uLqt/maKJ755aTdX6WMEtDw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95520},"main":"./dist/ima-sdk.cjs.js","types":"./dist/lib/index.d.ts","module":"./dist/ima-sdk.esm.js","gitHead":"65f1a0a7a6bf7c24e3684b5e5ae75c5fed9dd0d9","scripts":{"build":"rollup --config","clean":"rollup --config ./clean/rollup.clean.js"},"_npmUser":{"name":"coolita-os-developer","email":"1121898804@qq.com"},"repository":{"url":"http://gitlab.skysri.com/overseas/google-ima3-js-sdk.git","type":"git"},"_npmVersion":"10.8.2","description":"A library for coolita os loading the Google IMA SDK with static typing for the SDK","directories":{},"_nodeVersion":"22.6.0","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.0","rollup":"^3.25.2","ts-node":"^10.9.1","typescript":"^5.1.6","@babel/core":"^7.22.5","@types/node":"^24.0.3","@babel/preset-env":"^7.22.5","@rollup/plugin-terser":"^0.4.3","rollup-plugin-cleaner":"^1.0.0","@rollup/plugin-commonjs":"^25.0.2","@babel/preset-typescript":"^7.22.5","@rollup/plugin-typescript":"^11.1.2","@better-typescript-lib/dom":"^2.11.0","@rollup/plugin-node-resolve":"^15.1.0","@types/google_interactive_media_ads_types":"^3.697.1"},"_npmOperationalInternal":{"tmp":"tmp/google-ima3-js-sdk_0.0.1_1779779773634_0.8920347987353314","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@coolita-os/google-ima3-js-sdk","version":"0.0.2","keywords":["google-ima3-js-sdk"],"author":{"name":"john"},"license":"MIT","_id":"@coolita-os/google-ima3-js-sdk@0.0.2","maintainers":[{"name":"coolita-os-developer","email":"1121898804@qq.com"},{"name":"xiao_yao_pai","email":"806620445@qq.com"}],"dist":{"shasum":"4929b0928b43a3522b4a6339311e5252dbe3995e","tarball":"https://registry.npmjs.org/@coolita-os/google-ima3-js-sdk/-/google-ima3-js-sdk-0.0.2.tgz","fileCount":16,"integrity":"sha512-W2owFpsFbt/CpQaHyx3pLfIjCZ+sOSkqeZNwWLDVJvIZBTSmRTH0ByiDDeUdt18LHuxz53z7L8lBJEFndxFB+A==","signatures":[{"sig":"MEUCIEteflilU28dlDc7i1ovTN/56oc4zOr3R0FMTfWycMsWAiEA1WmFsKgY7AFuNAZ1YzIpLNBMazr1j6rt1DszesDHpt8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":95866},"main":"./dist/ima-sdk.cjs.js","types":"./dist/lib/index.d.ts","module":"./dist/ima-sdk.esm.js","gitHead":"ee933064b4fc11b148437527a96f50a0c4b3a413","scripts":{"build":"rollup --config","clean":"rollup --config ./clean/rollup.clean.js"},"_npmUser":{"name":"coolita-os-developer","email":"1121898804@qq.com"},"repository":{"url":"http://gitlab.skysri.com/overseas/google-ima3-js-sdk.git","type":"git"},"_npmVersion":"10.8.2","description":"A library for coolita os loading the Google IMA SDK with static typing for the SDK","directories":{},"_nodeVersion":"22.6.0","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.0","rollup":"^3.25.2","ts-node":"^10.9.1","typescript":"^5.1.6","@babel/core":"^7.22.5","@types/node":"^24.0.3","@babel/preset-env":"^7.22.5","@rollup/plugin-terser":"^0.4.3","rollup-plugin-cleaner":"^1.0.0","@rollup/plugin-commonjs":"^25.0.2","@babel/preset-typescript":"^7.22.5","@rollup/plugin-typescript":"^11.1.2","@better-typescript-lib/dom":"^2.11.0","@rollup/plugin-node-resolve":"^15.1.0","@types/google_interactive_media_ads_types":"^3.697.1"},"_npmOperationalInternal":{"tmp":"tmp/google-ima3-js-sdk_0.0.2_1779780556738_0.6862476824234838","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@coolita-os/google-ima3-js-sdk","version":"0.0.3","keywords":["google-ima3-js-sdk"],"author":{"name":"john"},"license":"MIT","_id":"@coolita-os/google-ima3-js-sdk@0.0.3","maintainers":[{"name":"coolita-os-developer","email":"1121898804@qq.com"},{"name":"xiao_yao_pai","email":"806620445@qq.com"}],"dist":{"shasum":"4207e5324e03079dc51814a5602cf909a185f6fc","tarball":"https://registry.npmjs.org/@coolita-os/google-ima3-js-sdk/-/google-ima3-js-sdk-0.0.3.tgz","fileCount":16,"integrity":"sha512-VOoEUbQeUlm1SoFH5Xslz0eu+HuBpELn23+QzMhUifiuWmdkd20bb+Zj2Du2wnBAO//c7vIzhcCEeMwk3GvruQ==","signatures":[{"sig":"MEYCIQDkRyGUf1RtPMwrhWGr40KXchlROGuoPopvJVs2se7WtQIhAL7znHnLoKxG60Gy5YGTwcu0z32RVjoxRiwjTr0XXZlB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":96261},"main":"./dist/ima-sdk.cjs.js","types":"./dist/lib/index.d.ts","module":"./dist/ima-sdk.esm.js","gitHead":"c80f885a3d65d55050b4a623dc6722c794b4e31c","scripts":{"build":"rollup --config","clean":"rollup --config ./clean/rollup.clean.js"},"_npmUser":{"name":"coolita-os-developer","email":"1121898804@qq.com"},"repository":{"url":"http://gitlab.skysri.com/overseas/google-ima3-js-sdk.git","type":"git"},"_npmVersion":"10.8.2","description":"A library for coolita os loading the Google IMA SDK with static typing for the SDK","directories":{},"_nodeVersion":"22.6.0","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.0","rollup":"^3.25.2","ts-node":"^10.9.1","typescript":"^5.1.6","@babel/core":"^7.22.5","@types/node":"^24.0.3","@babel/preset-env":"^7.22.5","@rollup/plugin-terser":"^0.4.3","rollup-plugin-cleaner":"^1.0.0","@rollup/plugin-commonjs":"^25.0.2","@babel/preset-typescript":"^7.22.5","@rollup/plugin-typescript":"^11.1.2","@better-typescript-lib/dom":"^2.11.0","@rollup/plugin-node-resolve":"^15.1.0","@types/google_interactive_media_ads_types":"^3.697.1"},"_npmOperationalInternal":{"tmp":"tmp/google-ima3-js-sdk_0.0.3_1780379984399_0.8760660523350332","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@coolita-os/google-ima3-js-sdk","version":"0.0.4","keywords":["google-ima3-js-sdk"],"author":{"name":"john"},"license":"MIT","_id":"@coolita-os/google-ima3-js-sdk@0.0.4","maintainers":[{"name":"coolita-os-developer","email":"1121898804@qq.com"},{"name":"xiao_yao_pai","email":"806620445@qq.com"}],"dist":{"shasum":"40e88ae3b9a1a1dba9161f18ef13051d832c1ae2","tarball":"https://registry.npmjs.org/@coolita-os/google-ima3-js-sdk/-/google-ima3-js-sdk-0.0.4.tgz","fileCount":16,"integrity":"sha512-udI8yLUaYc/Z84XVj9c6RJqFw3R8teB2oSkGt8OEV0pFdAXldtRzYtCwOtojR2SnEt+AwMwDBRZvZ5rzYhYdjA==","signatures":[{"sig":"MEUCIHbFY51+wXju4O/lihShlVdYGY+oswGzZEPT6S0u123dAiEAsikrynoQnHswynlVZhAllkAmdKk9mcYk2VufZQZpmLU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":99662},"main":"./dist/ima-sdk.cjs.js","types":"./dist/lib/index.d.ts","module":"./dist/ima-sdk.esm.js","gitHead":"663060d4f9219b1fd2d32f69207c5cb9027f57ab","scripts":{"build":"rollup --config","clean":"rollup --config ./clean/rollup.clean.js"},"_npmUser":{"name":"coolita-os-developer","email":"1121898804@qq.com"},"repository":{"url":"http://gitlab.skysri.com/overseas/google-ima3-js-sdk.git","type":"git"},"_npmVersion":"10.8.2","description":"A library for coolita os loading the Google IMA SDK with static typing for the SDK","directories":{},"_nodeVersion":"22.6.0","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.0","rollup":"^3.25.2","ts-node":"^10.9.1","typescript":"^5.1.6","@babel/core":"^7.22.5","@types/node":"^24.0.3","@babel/preset-env":"^7.22.5","@rollup/plugin-terser":"^0.4.3","rollup-plugin-cleaner":"^1.0.0","@rollup/plugin-commonjs":"^25.0.2","@babel/preset-typescript":"^7.22.5","@rollup/plugin-typescript":"^11.1.2","@better-typescript-lib/dom":"^2.11.0","@rollup/plugin-node-resolve":"^15.1.0","@types/google_interactive_media_ads_types":"^3.697.1"},"_npmOperationalInternal":{"tmp":"tmp/google-ima3-js-sdk_0.0.4_1784280584869_0.9556929125027205","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@coolita-os/google-ima3-js-sdk","version":"0.0.5","keywords":["google-ima3-js-sdk"],"author":{"name":"john"},"license":"MIT","_id":"@coolita-os/google-ima3-js-sdk@0.0.5","maintainers":[{"name":"coolita-os-developer","email":"1121898804@qq.com"},{"name":"xiao_yao_pai","email":"806620445@qq.com"}],"dist":{"shasum":"c76668ec925f211e52b6ecf1f0a1cac55dcb9dfa","tarball":"https://registry.npmjs.org/@coolita-os/google-ima3-js-sdk/-/google-ima3-js-sdk-0.0.5.tgz","fileCount":16,"integrity":"sha512-/IGCcmL51Wbsus/MWSdgsYRPg3S+CVEtUPlDpagsLRF4URFKMC1ElJbHqXoxnetQrGK6INwQUHB56aEEzobXCQ==","signatures":[{"sig":"MEQCICIX14vPo8gLwu/EyxMlpP7sSLT6OSbJIZOQHvCKeB4EAiBNP96mLkh9j8MQANGDtkYiYmyyOHFj3rWOflvw7E3OTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100661},"main":"./dist/ima-sdk.cjs.js","types":"./dist/lib/index.d.ts","module":"./dist/ima-sdk.esm.js","gitHead":"73baf1955bc24365f43ae9a61da9941c2d705f29","scripts":{"build":"rollup --config","clean":"rollup --config ./clean/rollup.clean.js"},"_npmUser":{"name":"coolita-os-developer","email":"1121898804@qq.com"},"repository":{"url":"http://gitlab.skysri.com/overseas/google-ima3-js-sdk.git","type":"git"},"_npmVersion":"10.8.2","description":"A library for coolita os loading the Google IMA SDK with static typing for the SDK","directories":{},"_nodeVersion":"22.6.0","_hasShrinkwrap":false,"devDependencies":{"tslib":"^2.6.0","rollup":"^3.25.2","ts-node":"^10.9.1","typescript":"^5.1.6","@babel/core":"^7.22.5","@types/node":"^24.0.3","@babel/preset-env":"^7.22.5","@rollup/plugin-terser":"^0.4.3","rollup-plugin-cleaner":"^1.0.0","@rollup/plugin-commonjs":"^25.0.2","@babel/preset-typescript":"^7.22.5","@rollup/plugin-typescript":"^11.1.2","@better-typescript-lib/dom":"^2.11.0","@rollup/plugin-node-resolve":"^15.1.0","@types/google_interactive_media_ads_types":"^3.697.1"},"_npmOperationalInternal":{"tmp":"tmp/google-ima3-js-sdk_0.0.5_1786958022958_0.5589981208737365","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@coolita-os/google-ima3-js-sdk","version":"0.0.6","description":"A library for coolita os loading the Google IMA SDK with static typing for the SDK","main":"./dist/ima-sdk.cjs.js","module":"./dist/ima-sdk.esm.js","types":"./dist/lib/index.d.ts","keywords":["google-ima3-js-sdk"],"author":{"name":"john"},"repository":{"type":"git","url":"http://gitlab.skysri.com/overseas/google-ima3-js-sdk.git"},"license":"MIT","scripts":{"build":"rollup --config","clean":"rollup --config ./clean/rollup.clean.js"},"devDependencies":{"@babel/core":"^7.22.5","@babel/preset-env":"^7.22.5","@babel/preset-typescript":"^7.22.5","@rollup/plugin-commonjs":"^25.0.2","@rollup/plugin-node-resolve":"^15.1.0","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-typescript":"^11.1.2","@types/node":"^24.0.3","@types/google_interactive_media_ads_types":"^3.697.1","@better-typescript-lib/dom":"^2.11.0","rollup":"^3.25.2","rollup-plugin-cleaner":"^1.0.0","ts-node":"^10.9.1","tslib":"^2.6.0","typescript":"^5.1.6"},"_id":"@coolita-os/google-ima3-js-sdk@0.0.6","gitHead":"d1998e03d49f59a05cfd3585d03b9255139c6807","_nodeVersion":"22.6.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-XC18WttcINPjTDZF2ULG41TOo+Yb6sOnx/0oiVh42lfkTTPhKGkR3k/EJtq/YLa5vEnFX3hdp2oGcUNh8LakVw==","shasum":"a35cbdc6b56a34c19c5741077b0024278c914f3f","tarball":"https://registry.npmjs.org/@coolita-os/google-ima3-js-sdk/-/google-ima3-js-sdk-0.0.6.tgz","fileCount":16,"unpackedSize":100644,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCIB9R8BXMEDATtf6ImkRVimw9vFv3hU1EiHpdonldPQAIgIjLyprt0ZefOP/Meft622nWdwXH1V5r/wxpS8u+NA6w="}]},"_npmUser":{"name":"coolita-os-developer","email":"1121898804@qq.com"},"directories":{},"maintainers":[{"name":"coolita-os-developer","email":"1121898804@qq.com"},{"name":"xiao_yao_pai","email":"806620445@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/google-ima3-js-sdk_0.0.6_1787021126951_0.029856800360342994"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-26T07:16:13.489Z","modified":"2026-08-18T02:45:27.268Z","0.0.1":"2026-05-26T07:16:13.770Z","0.0.2":"2026-05-26T07:29:16.883Z","0.0.3":"2026-06-02T05:59:44.548Z","0.0.4":"2026-07-17T09:29:44.992Z","0.0.5":"2026-08-17T09:13:43.097Z","0.0.6":"2026-08-18T02:45:27.107Z"},"author":{"name":"john"},"license":"MIT","keywords":["google-ima3-js-sdk"],"repository":{"type":"git","url":"http://gitlab.skysri.com/overseas/google-ima3-js-sdk.git"},"description":"A library for coolita os loading the Google IMA SDK with static typing for the SDK","maintainers":[{"name":"coolita-os-developer","email":"1121898804@qq.com"},{"name":"xiao_yao_pai","email":"806620445@qq.com"}],"readme":"# google-ima3-js-sdk\n\nCoolita OS ima js sdk插件库\n\n[Google IMA SDK官方文档](https://developers.google.com/interactive-media-ads/docs/sdks/html5/).\n\n## 安装\n\n`yarn add @coolita-os/google-ima3-js-sdk` or `npm install --save @coolita-os/google-ima3-js-sdk`\n\n## 使用\n\n### 一、HTML文件中引入Google官方SDK脚本\n\n1、引入https://imasdk.googleapis.com/js/sdkloader/ima3.js:\n\n```html\n<!DOCTYPE html>\n<html lang=\"en\">\n\n<head>\n    <meta charset=\"UTF-8\" />\n    <link rel=\"icon\" href=\"/favicon.ico\" />\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n    <meta name=\"viewport\"\n        content=\"width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0\" />\n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n    <meta http-equiv=\"pragma\" content=\"no-cache\" />\n    <meta http-equiv=\"Cache-Control\" content=\"no-cache, must-revalidate\" />\n    <script type=\"text/javascript\" src=\"https://imasdk.googleapis.com/js/sdkloader/ima3.js\" async></script>\n    <title>google-ima3-js-sdk</title>\n</head>\n\n<body>\n    <div id=\"app\"></div>\n</body>\n\n</html>\n```\n\n2、在需要插入广告的节点添加广告节点元素和样式控制\n\n```html\n<div class=\"ad-ui\" style=\"opacity: 0\" id=\"ad-ui\"></div>\n<div class=\"ad-player-wrap\">\n    <video\n        style=\"display: none;\"\n        class=\"ad-video\"\n        id=\"ad-video\">\n    </video>\n    <div class=\"ad-container\" id=\"ad-container\"></div>\n</div>\n```\n\n```css\n    .ad-player-wrap {\n        width: 100%;\n        height: 100%;\n        position: relative;\n    }\n    .ad-video,\n    .ad-container {\n        position: absolute;\n        top: 0;\n        left: 0;\n        width: 100%;\n        height: 100%;\n    }\n\n    .ad-video {\n        width: 100%;\n        height: 100%;\n        object-fit: cover; // 保持原有尺寸比例。但部分内容可能被剪切。\n    }\n```\n\n### 二、JavaScript/TypeScript 调用实现部分\n\n1、创建广告播放器实例并添加相关的数据添加事件\n\n```js\nimport ImaAdPlayer from '@coolita-os/google-ima3-js-sdk'\n\n// 创建广告播放器实例，内部实现自动调用requestAd()发起广告请求等其他逻辑\nlet imaAdPlayerInstance = new ImaAdPlayer({\n    adVideoElement: document.getElementById('ad-video'), // 广告节点元素\n    contentElement: null, // 内容推荐位节点元素video/div，没有传null\n    adContainerElement: document.getElementById('ad-container'), // 广告UI容器元素\n    adUIElement: document.getElementById('ad-ui'), // 广告UI元素/没有传null\n    adTagUrl: '', // 广告请求tagUrl\n    bitrate: 300, // 广告比特率\n    muted: true, // 是否静音，默认静音\n    observeVideoSize: true, // 是否监听视频窗口大小变化做处理\n    instanceApi: { // 实例需要实现的所有回调函数\n        onLoad: (ad) => { // 请求后有广告返回\n            \n        },\n        onContentPauseRequested: () => {\n            // 正片是video，触发了暂停请求\n        },\n        onImpression: () => { \n            // 开始曝光\n        },\n        onStarted: () => { \n            // 即将开始播放\n        },\n        onFirstQuartile: () => { \n            // 播放了1/4\n        },\n        onMidpoint: () => { \n            // 播放了1/2\n        },\n        onThirdQuartile: () => { \n            // 播放了3/4\n        },\n        onComplete: () => {\n            // 广告100%播放完成，有多个广告将播放下一个，并再次触发onLoad\n        }, \n        onSkipStateChange: () => {\n            // 广告播放过程中，返回可跳过状态\n                \n        },\n        onAllAdsCompleted: () => {\n            // 所有广告播放完成\n            imaAdPlayerInstance.handlePlayAdComplete() // 内部执行实例定义重置\n        }, \n        onClick: () => {\n            // 广告触发了点击\n        }, \n        onAdProgress: (adEvent) => {\n            // 广告发生进度更新，可以得到当前广告的进度数据、时间等信息\n        },\n        onAdErrorEvent: (errorData) => {\n            // 广告发生异常，内部已经做了自动处理异常\n            // 正片是图片或者页面跳转等其他逻辑的话要自己在下面处理\n        }\n    }\n})\n\n```\n\n2、销毁广告播放器实例\n\n```js\n    imaAdPlayerInstance.destroy()\n```\n\n3、循环播放广告，可直接使用当前实例再次发起广告请求\n\n```js\n    imaAdPlayerInstance.requestAd()\n```\n\n4、监听到所有广告播放完成\n\n```js\n    onAllAdsCompleted: () => {\n        // 所有广告播放完成\n        imaAdPlayerInstance.handlePlayAdComplete() // 内部执行实例定义重置\n    }\n```\n\n5、跳过广告\n\n```js\n    imaAdPlayerInstance.skipAd()\n```\n\n6、暂停广告播放\n\n```js\n    imaAdPlayerInstance.pauseAd()\n```\n\n7、 恢复广告播放\n\n```js\n    imaAdPlayerInstance.resumeAd()\n```\n\n8、控制广告播放器是否静音\n```js\n    imaAdPlayerInstance.handlePlayerIsMuted(isMute: boolean)\n```\n\n### 三、埋点实现相关接口\n1、谷歌广告/系统广告埋点公共接口部分，data为埋点上报的所有参数，sendParams为发送参数自定义的方法\n\n```js\nimport {\n    setAdSkipBuried,\n    setAdPercentBuried,\n    setAdClickBuried,\n    setAdErrorBuried,\n    setAdRequestBuried,\n    setAdResponseBuried,\n    setAdDownloadBuried\n} from '@coolita-os/google-ima3-js-sdk'\n\nsetAdSkipBuried(data: any, sendParams: Function): void  // 按back键/home键跳过\nsetAdPercentBuried(data: any, sendParams: Function): void  // 广告播放进度\nsetAdClickBuried(data: any, sendParams: Function): void // 广告点击\nsetAdErrorBuried(data: any, sendParams: Function): void // 广告播放异常\nsetAdRequestBuried(data: any, sendParams: Function): void // 发起广告请求\nsetAdResponseBuried(data: any, sendParams: Function): void // 接收到广告平台返回信息\nsetAdDownloadBuried(data: any, sendParams: Function): void  // 接收到广告完成下载，即将开始播放\n```\n\n2、仅谷歌广告可使用的埋点公共接口部分，data为埋点上报的所有参数，sendParams为发送参数定义的方法\n\n```ts\n-- 参数传递说明：\nconst currentAdParams: object = { // 如下为必须包含的参数\n    adType: string // 广告类型\n    eventId: string | number  // 广告事件唯一id\n    strategyId: string | number, //广告策略id\n    strategyName: string, // 广告策略名称\n    positionId: string | number, // 【首页】广告id\n    positionPid: string, // 【首页】广告位置\n    adServer: string | number// 广告请求方：1：Google，2：Spring Serve\n}\nconst currTabData: object = { // 如下为必须包含的参数，目前仅使用page_id\n    page_id: string | number // 版面id\n}\nconst adData: object // 谷歌广告返回的响应的整个数据结构\nconst sendParams: // 发送埋点数据时，自己定义的上报方法\nconst schedule: number // 上报的播放进度值，如：25\nconst code: any // 广告请求返回的错误码， 如：303、400\nconst mode: string | number // 静音:Mute; 取消静音:Unmute;音量+键:Volume+; 音量-键:Volume-\n\n\n-- 埋点上报接口使用&&传参：\nimport {\n    setGoogleAdRequestBuried,\n    setGoogleAdResponseBuried,\n    setGoogleAdDownloadBuried,\n    setGoogleAdPercentBuried,\n    setGoogleAdClickBuried,\n    setGoogleAdErrorBuried,\n    setGoogleAdSkipBuried,\n    setGoogleAdUnmuteBuried\n} from '@coolita-os/google-ima3-js-sdk'\nsetGoogleAdRequestBuried({\n    currentAdParams\n}, sendParams: Function): void // 发起广告请求，内部直接调用setAdRequestBuried\n\nsetGoogleAdResponseBuried({\n    currentAdParams,\n    adData\n}, sendParams: Function): void // 谷歌广告返回的响应数据，内部直接调用setAdResponseBuried\n\nsetGoogleAdDownloadBuried({\n    currentAdParams,\n    adData\n}, sendParams: Function): void // 谷歌广告完成下载，内部直接调用setAdDownloadBuried\n\nsetGoogleAdPercentBuried({\n    currentAd,\n    adData,\n    currentAdParams,\n    currTabData\n},\n    schedule: number,\n    sendParams: Function): void // 谷歌广告进度数据上报，通过传过来的sendParams发送进度数据\n\nsetGoogleAdClickBuried({\n    currentAdParams,\n    adData\n}, sendParams: Function): void // 谷歌广告点击，内部直接调用setAdClickBuried\n\nsetGoogleAdErrorBuried({\n    adData,\n    currentAdParams\n},\n    code: any,\n    sendParams: Function): void  // 谷歌广告发生异常，内部直接调用setAdErrorBuried\n\nsetGoogleAdSkipBuried({\n    adData,\n    currentAdParams\n}, sendParams: Function): void \n\nsetGoogleAdUnmuteBuried({// 按静音键或音量+-键控制，广告是否静音\n    adData,\n    currentAdParams,\n    mode\n}: any, sendParams: Function): void // 按静音键或音量+-键，通过传过来的sendParams发送埋点数据\n```\n\n# 四、谷歌广告内存控制器使用\n\n````ts\n    import { googleAdMemoryManager } from  '@coolita-os/google-ima3-js-sdk'\n    const initIMA: Function // 广告初始化的方法\n    const adParams: {} // 广告相关的参数\n    const adTypeStr: '' // 广告类型自定义字符串，主要用于打印过滤数据，如：recommendAds\n    const deinitIMA: Function // 卸载广告的方法\n    const handleReplayAd: Function // 广告执行轮询请求的方法\n\n    // 第一次请求广告时调用initIMA判断内存是否充足，内存充足返回true，内存不足自动5s执行一次initIMA\n    googleAdMemoryManager.createInitIMATimer(initIMA, adParams, adTypeStr): boolean \n\n    // 广告请求成功后，每隔5s查询一次内存数据，当查询了5次内存不足后，调用传入的deinitIMA，强制刷新页面URL，释放内存\n    googleAdMemoryManager.createQueryMemoryTimer(deinitIMA, adTypeStr): void \n\n    // 广告轮询，每次请求的所有广告播放结束，再次判断内存释放充足，内存不足自动5s执行一次\n    googleAdMemoryManager.createReplayAdTimer(handleReplayAd, adTypeStr): void \n\n    // 清除广告轮询定时器\n    googleAdMemoryManager.clearReplayAdTimer(): void \n\n    // 清除每隔5s查询一次内存数据\n    googleAdMemoryManager.clearQueryMemoryTimer(): void \n\n     // 清除第一次请求广告的定时器\n    googleAdMemoryManager.clearInitIMATimer(): void\n\n     // 清除所有定时器\n    googleAdMemoryManager.clearAllTimer(): void\n````\n\n# SDK暴露可以使用的相关工具\n\n```js\nimport { utilsBySDK } from  '@coolita-os/google-ima3-js-sdk'\n\nutilsBySDK.generateUniqueRandom() // 通过时间戳生成13位的唯一随机数\n\nlet timer = new utilsBySDK.Timer(function () {}, 5) // 创建一个5s定时器\ntimer.start() // 执行定时器\n\ntimer.clear() // 清除定时器\ntimer = null\n\n```\n\n# SDK暴露可以调用的异步接口\n\n```js\nimport { ajaxBySDK } from  '@coolita-os/google-ima3-js-sdk'\najaxBySDK.getNodeUrl(node: number) // 没有板子的场景，需要根据节点域名类型去获取并更新services.json\n\najaxBySDK.sendAjaxRequest({ // 发起一个ajax请求\n    headers, // 请求头参数\n    method, // 请求方法，默认GET\n    url, // 请求地址\n    data // POST请求的body参数，GET请求为null\n})\n```","readmeFilename":"README.md"}