跳到主要内容

打开网页页面(OpenUrl)

AndroidiOSWindows
如果您使用的是 Unreal Engine,请参见 Unreal Engine SDK 的 OpenUrl
注意

从 iOS 18 起,iOS 设备不再支持使用 UIApplicationopenURL(_:) 方法。
SDK V1.26.00 及以上版本已使用 open(_:options:completionHandler:) 方法进行替换,因此不受影响。

SDK V1.26.00 以下版本,INTLWebView 将无法跳转到 Safari 浏览器,游戏内 WebView H5 活动也将无法使用 Safari 打开网页。
建议受影响的业务升级 SDK 版本至 V1.26.00 或以上版本。

打开网页主要是通过 WebView 模块打开指定的 Web 页面,并根据不同的参数控制 WebView 的显示。

函数定义

public static void OpenUrl(string url, INTLWebViewOrientation screenOrientation = INTLWebViewOrientation.Auto, bool fullScreenEnable = false,
bool encryptEnable = true, bool systemBrowserEnable = false, string extraJson = "{}")

入参说明

参数类型说明
urlstring网页地址
URL 里的中文必须经过 url encode
screenOrientationINTLWebViewOrientationAuto 自动=1
Portrait 纵向 =2
Landscape 横向=3
fullScreenEnablebool是否以全屏的方式打开
默认:false
encryptEnablebool链接添加登录态数据
默认:true
encryptEnabletrue 且为登录态时将对指定的 URL 进行加密
systemBrowserEnablebool是否用系统浏览器打开
默认:false
extraJsonstringJSON 格式的 扩展字段
默认为空

活动页面参数

名称说明
role_id角色 ID
role_name角色名 URL-encoded 编码
area_id大区 ID
zone_id小区 ID
lang_type语言类型 (RFC 4646)
例如 "en",详情请参见 语言类型定义

OpenUrl 扩展字段配置(XSX、PS5 平台不支持)

注意

Android 已修改为节点显示器,并不需要额外的配置。

名称类型说明
widthintWindows WebView 的宽度
单位:%
heightintWindows WebView 的高度
单位:%
BG_COLORstring设置 WebView 背景颜色
例如,ff0000。
PROGRESS_TYPEint设置进度条样式
0:进度条 + loading 图
1:进度条
2:loading 图
isSameProcessWebViewbool是否以同进程方式启动 WebView
默认:false
CONFIG_KEY_BACK_DISABLEbool是否禁用返回按钮<0
/>默认:INTLConfig.ini 的配置
notch_full_screenint是否铺满 iPhone 异型屏
0:不铺满
1:铺满
默认:0
visibleShareMorebool是否可见分享按钮
默认:true,可见

回调处理

回调处理接口是 WebViewResultObserver。回调数据结构是 WebviewResult

回调 ID 是 INTL_WEBVIEW_CLOSE_URL

代码示例

注意

如果传入的 URL 打不开,请检查传入的 URL 是否正确。

例如:

  • 参数必须没有空格
  • 带有中文的 URL 必须进行 url encode
//默认效果打开 URL
INTLAPI.OpenUrl ("https://www.qq.com");

//打开 URL,Player Network SDK 会自动携带登录态数据
INTLAPI.OpenUrl ("https://www.qq.com", INTLWebViewOrientation.Auto, false, true);

//默认效果打开活动 URL
INTLAPI.OpenUrl ("https://www.qq.com?role_id=1&role_name=aaa&area_id=1&zone_id=1&lang_type=en");

//打开 URL 并调了Windows WebView 的宽度和高度
INTLAPI.OpenUrl ("https://www.qq.com", INTLWebViewOrientation.Auto, false, true, false, "{\"height\": 60, \"width\": 80}");

链接添加登录态数据

如果要链接自动带上登录态等参数,在用户登录后调用 OpenUrl 时,需设置 encryptEnable=true
为了防止信息泄漏,使用浏览器打开该链接时,链接中的登录态等参数均会被移除。

INTLAPI.OpenUrl ("https://www.qq.com", INTLWebViewOrientation.Auto, false, true);
  • 如果未登录,用于encryptEnable = true 调用 OpenUrl,打开的链接是:

     https://www.qq.com
  • 如果以登录,用于encryptEnable = true 调用 OpenUrl,打开的链接是:

     https://www.qq.com?gameid=11&channelid=3&os=1&ts=1634707615&sdk_version=1.11.00.487&seq=11-3b61c8315b91d319eaa5622d72c474ec7ee395cee116d142a74b3455607e3d21-1634707615-14&encodeparam=C524E9DE27EB02E552CFBA9C54BFA301317DF66F49C5C02ED708D582B80A1B74DE8F0723731F0D66EBD12095E244097DC3AFAE1203A8FCD2A2821C1DEC9CD3AE254BAD99C93B095E8F39FCE414FBFB0A79F9EA8DF2E1B309190E5A8721A5AC8132E8E89506CDBA1ACBB1C17AA794A658502C5CCA6B25E6105049EABB44C408700FE2713FDD327217AF45A226F46FFD02

打开活动页面

为了活动页面可以获取游戏内参数信息,游戏通过 WebView 打开游戏内的活动时,URL 需要带上 活动页面参数