7
create_setting
yutent edited this page
默认已经配置了比较合适的webkit
设置, 一般不需要额外再加设置了。
这是已经配置好的功能列表:
- 允许页面缓存、包括离线缓存
- 允许js访问剪切板
- 支持indexedDB、localStorage、sessionStorage, 以及coookie
- 支持平滑滚动
- 允许全屏
- 媒体播放, 无需用户主动触发点击等行为, 可实现启动自动播放
- 视频播放不强制全屏
- 支持 JS 调用
window.open()
新开窗口 (0.4.0
开始支持)
另外, 除了以上默认配置, 提供了以下5个自定义设置(通过create_setting()
创建新的设置, 也可以通过访问webengine
实例的get_settings()
方法获取当前的设置对象)
useragent
修改'webkit的useragent
, 默认值为Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.4 Safari/605.1.15 WebEngine/{sdk_serverion}
app_name
应用名称 , 会被应用在上面的user_agent中, 代替SDK的名字 【0.7.0新增】app_version
应用版本号, 同上, 代替的是SDK的版本号 【0.7.0新增】- 'web_security' 可禁用
web security
, 禁用之后, 可以不受跨域限制, 可以方便实现一些业务, 如API测试工具、调用其他第三方提供的API等。 disable_fullscreen
禁用全屏, 可满足某些业务场景下, 不允许webapp全屏的需求。devtools
, 启动开发者控制台, 方便开发过程中进行代码调试mock_devices
, 模拟捕获设备的API, 方便开发人员可以在没有真实设备的情况下进行捕获设备相关的功能测试和调试。【0.4.0】之后, 合并到devtools中, 不再支持单独设置
注意: 若同时设置useragent
和app_name, app_version
时,app_name, app_version
不会被注入到最终的useragent
中
from webengine.gtk3 import WebEngine create_setting
web = WebEngine()
setting = create_setting({
"useragent": "...",
"app_name": "A_NEW_APP",
"app_version": "1.0.0",
"web_security": False,
"disable_fullscreen": True,
"devtools": True,
"mock_devices": True
})
web.use(setting)
# 也可以通过get_settings()获取设置对象, 然后可以任意修改, 该对象的实例方法, 请参考 WebKit2.Settings 文档
setting = web.get_settings()