WebKitWebViewControllerCreationParams
ios、macOS 平台下,WebKitWebViewControllerCreationParams
类是一个用于指定创建 WebKitWebViewController
的参数的对象。这个类继承自 PlatformWebViewControllerCreationParams
,并且是不可变的(使用了 @immutable
注解)。
构造函数
构造函数:
WebKitWebViewControllerCreationParams({
@visibleForTesting this.webKitProxy = const WebKitProxy(),
this.mediaTypesRequiringUserAction = const <PlaybackMediaTypes>{
PlaybackMediaTypes.audio,
PlaybackMediaTypes.video,
},
this.allowsInlineMediaPlayback = false,
this.limitsNavigationsToAppBoundDomains = false,
@visibleForTesting InstanceManager? instanceManager,
}) : _instanceManager = instanceManager ?? NSObject.globalInstanceManager {
_configuration = webKitProxy.createWebViewConfiguration(
instanceManager: _instanceManager,
);
//...
}
根据已有参数构建一个新实例:
WebKitWebViewControllerCreationParams.fromPlatformWebViewControllerCreationParams(
PlatformWebViewControllerCreationParams params, {
@visibleForTesting WebKitProxy webKitProxy = const WebKitProxy(),
Set<PlaybackMediaTypes> mediaTypesRequiringUserAction =
const <PlaybackMediaTypes>{
PlaybackMediaTypes.audio,
PlaybackMediaTypes.video,
},
bool allowsInlineMediaPlayback = false,
bool limitsNavigationsToAppBoundDomains = false,
@visibleForTesting InstanceManager? instanceManager,
}) : this(
webKitProxy: webKitProxy,
mediaTypesRequiringUserAction: mediaTypesRequiringUserAction,
allowsInlineMediaPlayback: allowsInlineMediaPlayback,
limitsNavigationsToAppBoundDomains:
limitsNavigationsToAppBoundDomains,
instanceManager: instanceManager,
);
属性
mediaTypesRequiringUserAction
:需要用户手势才能开始播放的媒体类型。默认包括PlaybackMediaTypes.audio
和PlaybackMediaTypes.video
。allowsInlineMediaPlayback
:是否允许 HTML5 视频的内联播放。默认值为false
。limitsNavigationsToAppBoundDomains
:是否限制导航到配置的域。仅在 iOS 14 及以上版本可用。默认值为false
。webKitProxy
:用于构建对象和调用 WebKit 原生库的静态方法。主要用于测试。_instanceManager
:维护用于与原生对象通信的实例。
私有属性
_configuration
:WKWebViewConfiguration
对象,用于配置 WebView 的行为。
主要功能
- 初始化时,根据传入的参数配置
_configuration
对象。 - 设置需要用户手势才能播放的媒体类型。
- 设置是否允许内联媒体播放。
- 设置是否限制导航到应用绑定的域。
这个类主要用于配置 WebKitWebViewController
的创建参数,以便在不同的使用场景中灵活调整 WebView 的行为。
本文作者:Maeiee
本文链接:WebKitWebViewControllerCreationParams
版权声明:如无特别声明,本文即为原创文章,版权归 Maeiee 所有,未经允许不得转载!
喜欢我文章的朋友请随缘打赏,鼓励我创作更多更好的作品!