乐玩


穿山甲接入文档

<p>[TOC]</p> <h1>穿山甲接入文档</h1> <h2>1、开发环境搭建</h2> <h3>1.1、将 SDK 资源复制拖入到游戏工程</h3> <p><code>platform_config 为乐玩配置文件,参数是否需要修改请与运营人员确认</code></p> <pre><code class="language-json">{     &amp;quot;game&amp;quot;: &amp;quot;jihewangguozb-h5&amp;quot;,//独代层游戏标识     &amp;quot;ly_game&amp;quot;: &amp;quot;jihewangguo-h5&amp;quot;,//联运层游戏标识     &amp;quot;game_version&amp;quot;: &amp;quot;1.0&amp;quot;,     &amp;quot;sdk_version&amp;quot;: &amp;quot;1.0&amp;quot;,     &amp;quot;ly_api_secret&amp;quot;: &amp;quot;B8D2ff6KSw8WzizAa8&amp;quot;,//联运层key参数     &amp;quot;api_secret&amp;quot;: &amp;quot;B8D2ff6KSw8WzizAa8&amp;quot;,//独代层key 参数     &amp;quot;package_id&amp;quot;: &amp;quot;9&amp;quot;,//独代层     &amp;quot;channel_label&amp;quot;: &amp;quot;lewan&amp;quot;,//独代层     &amp;quot;channel_id&amp;quot;: &amp;quot;1&amp;quot;,//独代层     &amp;quot;game_id&amp;quot;: &amp;quot;74&amp;quot;,//独代层 }</code></pre> <pre><code>依赖的framework说明如下: LYSDKADUtils.h、LYSDKADUtils.m //乐玩穿山甲广告SDK相关 BUAdLive.framework、BUAdSDK.framework、CSJMediation.framework、CSJAdSDK.bundle//穿山甲广告SDK相关资源(如手动引入需要这些文件)</code></pre> <p>拖入完请确保Copy Bundle Resources中有CSJAdSDK.bundle,否则可能出现icon图片加载不出来的情况。</p> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=8363edccfc70c24b617f41ab743144ec&amp;amp;file=file.png" alt="" /></p> <p>如果游戏使用CocoaPods管理包项目的话,穿山甲广告部分请查看官方文档 <a href="https://www.csjplatform.com/supportcenter/5376">https://www.csjplatform.com/supportcenter/5376</a> 进行配置</p> <p>头条部分官方文档 <a href="https://bytedance.larkoffice.com/docx/ZanOdTN6EobL07xbQZccyI3Fn5c">https://bytedance.larkoffice.com/docx/ZanOdTN6EobL07xbQZccyI3Fn5c</a></p> <h4>如果使用 pod 管理引入, 按照以下命令(推荐)</h4> <pre><code>pod &amp;#039;Ads-CN&amp;#039; //穿山甲广告</code></pre> <h3>1.2、Xcode工程配置</h3> <ul> <li>穿山甲SDK的运行环境</li> <li>支持系统iOS 11.0及以上;</li> <li>SDK编译环境 Xcode 14.1及以上;</li> <li>支持架构: x86-64, armv7, arm64,i386</li> </ul> <h4>1.2.1、添加权限</h4> <ul> <li>工程plist文件设置,点击右边的information Property List后边的 &quot;+&quot; 展开添加 App Transport Security Settings,先点击左侧展开箭头,再点右侧加号,Allow Arbitrary Loads 选项自动加入,修改值为 YES。 SDK API 已经全部支持HTTPS,但是广告主素材存在非HTTPS情况。</li> </ul> <pre><code class="language-xml">&amp;lt;key&amp;gt;NSAppTransportSecurity&amp;lt;/key&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;NSAllowsArbitraryLoads&amp;lt;/key&amp;gt; &amp;lt;true/&amp;gt; &amp;lt;/dict&amp;gt;</code></pre> <h4>1.2.2、build settings设置</h4> <ul> <li>Build Settings中Other Linker Flags 增加参数</li> </ul> <pre><code>-ObjC -l&amp;quot;c++&amp;quot; -l&amp;quot;c++abi&amp;quot; -l&amp;quot;sqlite3&amp;quot; -l&amp;quot;z&amp;quot; -all_load</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=ab7f8a2a07d464995ce13c585d8baa36&amp;amp;file=file.png" alt="" /></p> <h4>1.2.3、添加依赖库</h4> <ul> <li>工程需要在TARGETS -&gt; Build Phases中找到Link Binary With Libraries,点击“+”,依次添加下列依赖库</li> </ul> <pre><code>CoreML.framework (6.3.0.0及以上版本新增) Accelerate.framework AdSupport.framework AppTrackingTransparency.framework AudioToolbox.framework AVFoundation.framework CoreGraphics.framework CoreImage.framework CoreLocation.framework CoreMedia.framework CoreMotion.framework CoreTelephony.framework CoreText.framework ImageIO.framework JavaScriptCore.framework MapKit.framework MediaPlayer.framework MobileCoreServices.framework QuartzCore.framework Security.framework StoreKit.framework SystemConfiguration.framework UIKit.framework WebKit.framework DeviceCheck.framework依赖(4.8.0.3及以上版本新增) libbz2.tbd libc++.tbd libiconv.tbd libresolv.9.tbd libsqlite3.tbd libxml2.tbd libz.tbd libc++abi.tbd</code></pre> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=10c8900ff15ffdae7d908ac627c1d058&amp;amp;file=file.png" alt="" /></p> <h4>1.2.4、iOS17隐私策略适配说明</h4> <ul> <li>如果您的游戏本身包含PrivacyInfo.xcprivacy文件,请将穿山甲的PrivacyInfo.xcprivacy中的条款补全到自身的PrivacyInfo.xcprivacy中</li> <li>如果没有可以在工程点击 file-new-file 选择 PrivacyInfo 文件,然后使用source code方式打开复制以下内容</li> </ul> <pre><code class="language-xml">&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt; &amp;lt;!DOCTYPE plist PUBLIC &amp;quot;-//Apple//DTD PLIST 1.0//EN&amp;quot; &amp;quot;http://www.apple.com/DTDs/PropertyList-1.0.dtd&amp;quot;&amp;gt; &amp;lt;plist version=&amp;quot;1.0&amp;quot;&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;NSPrivacyCollectedDataTypes&amp;lt;/key&amp;gt; &amp;lt;array/&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPITypes&amp;lt;/key&amp;gt; &amp;lt;array&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPIType&amp;lt;/key&amp;gt; &amp;lt;string&amp;gt;NSPrivacyAccessedAPICategoryFileTimestamp&amp;lt;/string&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPITypeReasons&amp;lt;/key&amp;gt; &amp;lt;array&amp;gt; &amp;lt;string&amp;gt;C617.1&amp;lt;/string&amp;gt; &amp;lt;string&amp;gt;DDA9.1&amp;lt;/string&amp;gt; &amp;lt;/array&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPIType&amp;lt;/key&amp;gt; &amp;lt;string&amp;gt;NSPrivacyAccessedAPICategorySystemBootTime&amp;lt;/string&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPITypeReasons&amp;lt;/key&amp;gt; &amp;lt;array&amp;gt; &amp;lt;string&amp;gt;35F9.1&amp;lt;/string&amp;gt; &amp;lt;/array&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPIType&amp;lt;/key&amp;gt; &amp;lt;string&amp;gt;NSPrivacyAccessedAPICategoryDiskSpace&amp;lt;/string&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPITypeReasons&amp;lt;/key&amp;gt; &amp;lt;array&amp;gt; &amp;lt;string&amp;gt;7D9E.1&amp;lt;/string&amp;gt; &amp;lt;string&amp;gt;E174.1&amp;lt;/string&amp;gt; &amp;lt;/array&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPIType&amp;lt;/key&amp;gt; &amp;lt;string&amp;gt;NSPrivacyAccessedAPICategoryUserDefaults&amp;lt;/string&amp;gt; &amp;lt;key&amp;gt;NSPrivacyAccessedAPITypeReasons&amp;lt;/key&amp;gt; &amp;lt;array&amp;gt; &amp;lt;string&amp;gt;CA92.1&amp;lt;/string&amp;gt; &amp;lt;/array&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;/array&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;/plist&amp;gt;</code></pre> <h4>1.2.5、添加 SKAdNetwork 支持</h4> <ul> <li>将穿山甲的 SKAdNetwork ID 添加到 info.plist 中,以保证 SKAdNetwork 的正确运行</li> </ul> <pre><code class="language-xml">&amp;lt;key&amp;gt;SKAdNetworkItems&amp;lt;/key&amp;gt; &amp;lt;array&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;SKAdNetworkIdentifier&amp;lt;/key&amp;gt; // SKAdNetwork方案的穿山甲SKAdNetwork id &amp;lt;string&amp;gt;238da6jt44.skadnetwork&amp;lt;/string&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;SKAdNetworkIdentifier&amp;lt;/key&amp;gt; // SKAdNetwork方案的穿山甲SKAdNetwork id &amp;lt;string&amp;gt;x2jnk7ly8j.skadnetwork&amp;lt;/string&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;dict&amp;gt; &amp;lt;key&amp;gt;SKAdNetworkIdentifier&amp;lt;/key&amp;gt; // SKAdNetwork方案的穿山甲SKAdNetwork id &amp;lt;string&amp;gt;22mmun2rn5.skadnetwork&amp;lt;/string&amp;gt; &amp;lt;/dict&amp;gt; &amp;lt;/array&amp;gt;</code></pre> <h2>2、功能接口 (注意:以下所有接口都必须在游戏收到 SDK 初始化完成之后才能调用)</h2> <h3>2.9、广告接口(必接)游戏应在登录回调后调用</h3> <table> <thead> <tr> <th>参数</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td>UIViewController</td> <td>上下文</td> </tr> <tr> <td>AdId</td> <td>广告位key</td> </tr> </tbody> </table> <h4>2.9.1、广告初始化(必接)</h4> <pre><code class="language-objectivec">[[LYSDKADUtils getInstance] initAd:self];</code></pre> <h4>2.9.2、加载广告(必接)</h4> <pre><code>视频广告预加载,需要在初始化完成后调用。 游戏应该在首次出现广告播放按钮的界面调用一次此接口,后续可以在播放完成后调用进行预加载。 注意:首次调用会拉起用户授权,为了合规需要,游戏应该在有广告按钮展示的界面再调用此接口。 如果出现广告拉起失败的情况,游戏可以调用一次此接口,但切勿一直重试,一直加载而不展示会影响广告后续填充率。</code></pre> <pre><code class="language-objectivec">[[LYSDKADUtils getInstance]loadAd:self];</code></pre> <p>响应参数说明9.3</p> <p>响应结果为json字符串,解析后字段如下:</p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必含</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">code</td> <td style="text-align: left;">是</td> <td style="text-align: left;">int</td> <td>加载结果,1:加载成功,2:加载失败</td> </tr> <tr> <td style="text-align: left;">msg  </td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>加载结果说明</td> </tr> <tr> <td style="text-align: left;">scene</td> <td style="text-align: left;">是</td> <td style="text-align: left;">string</td> <td>场景标识</td> </tr> </tbody> </table> <h4>2.9.3、显示广告(必接)</h4> <pre><code class="language-objectivec">[[LYSDKADUtils getInstance]showAd:self];//调用此接口发起视频展示。</code></pre> <p>响应结果为json字符串,解析后字段如下:</p> <table> <thead> <tr> <th style="text-align: left;">参数名</th> <th style="text-align: left;">必含</th> <th style="text-align: left;">类型</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td style="text-align: left;">code</td> <td style="text-align: left;">是</td> <td style="text-align: left;">int</td> <td>广告播放状态码。1:播放成功,2:播放失败(此时应重试一次广告加载并播放,但切勿一直重试)</td> </tr> <tr> <td style="text-align: left;">canReward  </td> <td style="text-align: left;">是</td> <td style="text-align: left;">int</td> <td>是否满足奖励发放条件,1:满足;0:不满足(广告未播放完成或者广告播放异常)</td> </tr> </tbody> </table> <h3>3.0、广告接口的回调</h3> <h3>[在乐玩初始化注册监听统一接口回调](<a href="https://www.showdoc.com.cn/p/8cc98123f64af0e434bb11e76bf52950#2.1%E3%80%81%E6%B3%A8%E5%86%8CSDK%E5%9B%9E%E8%B0%83%E7%9B%91%E5%90%AC%20(%E5%BF%85%E6%8E%A5">https://www.showdoc.com.cn/p/8cc98123f64af0e434bb11e76bf52950#2.1%E3%80%81%E6%B3%A8%E5%86%8CSDK%E5%9B%9E%E8%B0%83%E7%9B%91%E5%90%AC%20(%E5%BF%85%E6%8E%A5</a>)</h3>

页面列表

ITEM_HTML