supersdk

文档中心

文档中心

下载文档

活动模块


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

一、注意事项

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

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

注意三:jar 包接入方式需要集成官网 jar 包及 res 资源,并且添加权限及注册清单文件,aar 方式接入 aar 文件后可直接调用接口。

二、工程配置

1、权限添加

说明:在清单文件中添加以下权限。

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

2、清单文件注册

说明:在清单文件中添加以下 Activity。

<activity
    android:name="com.youzu.h5sdklib.PlayerActivity.MyPlayer"
    android:configChanges="orientation|screenSize|keyboardHidden|keyboard"
    android:screenOrientation="sensorPortrait"
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen"/>

<activity
    android:name="com.youzu.h5sdklib.imagepicker.ui.activity.ImagePreviewActivity"
    android:theme="@android:style/Theme.NoTitleBar">
</activity>

<activity
    android:name="com.youzu.h5sdklib.imagepicker.ui.activity.ImagesGridActivity"
    android:theme="@android:style/Theme.NoTitleBar">
</activity>

<activity
    android:name="com.youzu.h5sdklib.imagepicker.ui.activity.ImageCropActivity"
    android:theme="@android:style/Theme.NoTitleBar">
</activity>

<activity
    android:name="com.youzu.h5sdklib.WebActivity.PermissionActivity"
    android:configChanges="orientation|screenSize|keyboardHidden|keyboard"
    android:screenOrientation="behind"
    android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"/>

<activity
    android:name="com.youzu.h5sdklib.WebActivity.WebViewActivity"
    android:exported="false"
    android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"
    android:configChanges="keyboardHidden|screenSize|orientation"
    android:screenOrientation="sensor"/>

三、功能接口

1、打开 H5 页面接口

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

Map<String, Object> params = new HashMap<String, Object>();

params.put("h5url", "https://sdkcgi.youzu.com/others/h5SdkDemo"); // H5 页面测试地址、可测试绝大部分 H5SDK 功能
params.put("ticket","eyJvc2RrX2dhbWVfaWQiOiIxOTYzNzc0MjYiLCJ1c2VyX2lkIjoidTE4MjI2NzYxNzI1IiwibG9naW5fc2RrX25hbWUiOiJ5b3V6dSIsImNoYW5uZWxfaWQiOiIwIiwiZXh0ZW5kIjoiMDAxOTAwMXwxfDAwMTkwMDEiLCJhY2NvdW50X3N5c3RlbV9pZCI6IjAwNjAwMTUiLCJvc2RrX3VzZXJfaWQiOiIwMDYwMDE1X3UxODIyNjc2MTcyNSIsImlwIjoiMTAxLjIyNy4xMDIuNCIsImNvdW50cnkiOiJDTiIsInRpbWUiOjE1MTIzNzQ3MjksInNpZ24iOiI4ZGYzYWY5ODNiZmVmZmZjMWExZDhmM2VlZGZkYmE2YiJ9"); // SuperSDK 用户登录票据,可用于用户验证
params.put("server_id", GameParamsHandler.getInstance().getmServerId()); // 游戏区服编号
params.put("server_name", GameParamsHandler.getInstance().getmServerName()); // 游戏区服名称
params.put("role_id", GameParamsHandler.getInstance().getmRoleId()); // 角色编号
params.put("role_name", GameParamsHandler.getInstance().getmRoleName()); // 角色名
params.put("level", GameParamsHandler.getInstance().getmRoleLevel()); // 角色等级
params.put("vip_grade", GameParamsHandler.getInstance().getmRoleVip()); // VIP 等级
params.put("opid", opId); // 渠道编号

JSONObject extend = new JSONObject();
try {
    extend.put("showToolbar", "0");
    extend.put("orientation", "0");
} catch (Exception e) {
    e.printStackTrace();
}
params.put("extend", extend); // 扩展参数,可不传

SuperSDK.invoke("h5sdk", "openH5View", params);

extend 字段说明:

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

2、H5 页面关闭回调

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

private OnSuperSDKListener mSuperSDKListener = new OnSuperSDKListener() {

   @Override
   public void onSuperSDK(String moduleName, String funcName, String result) {
       if ("h5sdk".equals(moduleName) && "H5ViewDidClose".equals(funcName)) {
           // 如果游戏在打开 H5SDK 的时候选择关闭了游戏声音,可以在这里选择打开游戏声音
       }
   }
};

日志打印:

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