supersdk

文档中心

文档中心

下载文档

活动模块


游戏可以使用活动模块打开 web 页面,快速新增活动。

一、注意事项

注意一:活动模块需要在打包工具配置。

注意二:游戏在打开 H5 页面时,可选择关闭游戏声音,防止和 H5 页面的音视频冲突,在收到 H5 页面关闭的回调里,再将游戏声音打开。

二、工程配置

1、版本及设备

说明:支持 iOS 9.0+,支持 iPhone、iPad、iTouch、iPod,支持 armv7、arm64 架构。

2、所需系统库列表

说明:在工程中添加如下系统库。

AVFoundation.framework
AdSupport.framework(optional)
Foundation.framework  
ImageIO.framework
WebKit.framework(optional)
Security.framework
UIKit.framework

3、权限添加

说明:在 info.plist 文件中添加如下权限键值。

注意:App 可以换成对应游戏名称。

<key>NSMicrophoneUsageDescription</key>
<string> App 需要您的同意,才能使用麦克风</string>

<key>NSCameraUsageDescription</key>
<string> App 需要您的同意,才能使用相机</string>

<key>NSPhotoLibraryUsageDescription</key>
<string> App 需要您的同意,才能访问相册</string>

三、功能接口

1、打开 H5 页面接口

接口描述:打开一个 h5 页面。

注意:活动模块小于 v1.3.6 版本的情况下,活动模块自动对 url 进行编码,若游戏已做编码操作,服务端需解析两次。

NSDictionary *parameters = @{
                             @"h5url"  : @"https://sdkcgi.youzu.com/others/h5SdkDemo", // H5 页面测试地址、可测试绝大部分 H5SDK 功能
                             @"ticket" : @"eyJvc2RrX2dhbWVfaWQiOiIxOTYzNzc0MjYiLCJ1c2VyX2lkIjoidTE4MjI2NzYxNzI1IiwibG9naW5fc2RrX25hbWUiOiJ5b3V6dSIsImNoYW5uZWxfaWQiOiIwIiwiZXh0ZW5kIjoiMDAxOTAwMXwxfDAwMTkwMDEiLCJhY2NvdW50X3N5c3RlbV9pZCI6IjAwNjAwMTUiLCJvc2RrX3VzZXJfaWQiOiIwMDYwMDE1X3UxODIyNjc2MTcyNSIsImlwIjoiMTAxLjIyNy4xMDIuNCIsImNvdW50cnkiOiJDTiIsInRpbWUiOjE1MTIzNzQ3MjksInNpZ24iOiI4ZGYzYWY5ODNiZmVmZmZjMWExZDhmM2VlZGZkYmE2YiJ9", // SuperSDK 用户登录票据,可用于用户验证
                             @"server_id" : @"190001", // 游戏区服编号
                             @"server_name" : @"决战天下测试服", // 游戏区服名称
                             @"role_id" : @"00000001", // 角色编号
                             @"role_name" : @"墨韵", // 角色名
                             @"level" : @"125", // 角色等级
                             @"vip_grade" : @"15", // VIP 等级
                             @"opid" : @"2107", // 渠道编号
                             @"extend" : @{ // 扩展参数,可不传
                                             @"showToolbar" : @"0",
                                             @"orientation" : @"0"
                                     }
                             };
[SuperSDK invoke:@"h5sdk" funcName:@"openH5View" parameters:parameters];

extend 字段说明:

字段 说明 补充说明
showToolbar 底部导航栏 0:滑动控制 1:常驻 默认为 0 可选
orientation 方向 0:横竖屏 1:竖屏 2:横屏 默认为 0 可选

2、H5 页面关闭回调

接口描述:H5 页面关闭,如果在打开 H5 页面时,关闭了游戏声音,请在收到此回调后恢复游戏声音。

+ (void)handlerCallback:(NSString *)moduleName funcName:(NSString *)funcName parameters:(NSString *)parameters
{
    NSLog(@"****** 收到回调\n moduleName : %@,\n funcName : %@,\n parameters : %@", moduleName, funcName, parameters);
    
    NSDictionary *retParam = nil;
    if (parameters) {
        NSData *jsonData = [parameters dataUsingEncoding:NSUTF8StringEncoding];
        if (jsonData) {
            retParam = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves error:nil];
        }
    }
    
    int code = [[retParam objectForKey:@"code"] intValue];
    NSString *desc = [retParam objectForKey:@"msg"];
    id data  = [retParam objectForKey:@"data"];
    
    // H5SDK
    if ([moduleName isEqualToString:@"h5sdk"]) {
        if ([funcName isEqualToString:@"H5ViewDidClose"]) {// H5 页面关闭回调
            // H5 页面关闭,如果在打开 H5 页面时,关闭了游戏声音,请在收到此回调后恢复游戏声音
            // .....code
        }
    }
 }

日志打印:

moduleName : h5sdk,
funcName : H5ViewDidClose,
parameters : {
    "msg" : " h5 页面关闭,如果在打开 h5 页面时,关闭了游戏声音,请在收到此回调后恢复游戏声音",
    "code" : 1
}