uni-app项目nvue页面使用web-view,腾讯TBS x5内核一直不生效
{
"name" : "-====",
"appid" : "隐藏",
"description" : "",
"versionName" : "1.0.0",
"versionCode" : "100",
"transformPx" : false,
/ 5+App特有相关 /
"app-plus" : {
"webview" : {
"x5" : {
// 此属性需要勾选 Android X5 Webview 模块,详细参见下面的说明
"timeOut" : 10000, // 超时时间
"showTipsWithoutWifi" : true, // 是否在非WiFi网络环境时,显示用户确认下载x5内核的弹窗。默认值false
"allowDownloadWithoutWiFi" : true // 是否允许用户在非WiFi网络时进行x5内核的下载。默认值false(如果为true,就不会显示用户确认的弹窗。)
}
},
"usingComponents" : true,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"splashscreen" : {
"alwaysShowBeforeRender" : true,
"waiting" : true,
"autoclose" : true,
"delay" : 0
},
/ 模块配置 /
"modules" : {
"Webview-x5" : {
// 此属性需要勾选 Android X5 Webview 模块,详细参见下面的说明
"timeOut" : 10000, // 超时时间
"showTipsWithoutWifi" : true, // 是否在非WiFi网络环境时,显示用户确认下载x5内核的弹窗。默认值false
"allowDownloadWithoutWiFi" : true // 是否允许用户在非WiFi网络时进行x5内核的下载。默认值false(如果为true,就不会显示用户确认的弹窗。)
}
},
/ 应用发布信息 /
"distribute" : {
/ android打包配置 /
"android" : {
"permissions" : [
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
],
"abiFilters" : [ "armeabi-v7a", "arm64-v8a" ],
"targetSdkVersion" : 29
},
// "x5" : {
// "timeOut" : 3, // 超时时间(秒)
// "showTips" : true // 显示加载提示
// }
/ ios打包配置 /
"ios" : {
"dSYMs" : false,
"idfa" : false
},
/ SDK配置 /
"sdkConfigs" : {},
"icons" : {
"android" : {
"hdpi" : "unpackage/res/icons/72x72.png",
"xhdpi" : "unpackage/res/icons/96x96.png",
"xxhdpi" : "unpackage/res/icons/144x144.png",
"xxxhdpi" : "unpackage/res/icons/192x192.png"
},
"ios" : {
"appstore" : "unpackage/res/icons/1024x1024.png",
"ipad" : {
"app" : "unpackage/res/icons/76x76.png",
"app@2x" : "unpackage/res/icons/152x152.png",
"notification" : "unpackage/res/icons/20x20.png",
"notification@2x" : "unpackage/res/icons/40x40.png",
"proapp@2x" : "unpackage/res/icons/167x167.png",
"settings" : "unpackage/res/icons/29x29.png",
"settings@2x" : "unpackage/res/icons/58x58.png",
"spotlight" : "unpackage/res/icons/40x40.png",
"spotlight@2x" : "unpackage/res/icons/80x80.png"
},
"iphone" : {
"app@2x" : "unpackage/res/icons/120x120.png",
"app@3x" : "unpackage/res/icons/180x180.png",
"notification@2x" : "unpackage/res/icons/40x40.png",
"notification@3x" : "unpackage/res/icons/60x60.png",
"settings@2x" : "unpackage/res/icons/58x58.png",
"settings@3x" : "unpackage/res/icons/87x87.png",
"spotlight@2x" : "unpackage/res/icons/80x80.png",
"spotlight@3x" : "unpackage/res/icons/120x120.png"
}
}
},
"splashscreen" : {
"androidStyle" : "default",
"android" : {
"hdpi" : "/Users/duanan/Desktop/e8caada763617f8e2c4753b99f9ddc61.png",
"xhdpi" : "/Users/duanan/Desktop/e8caada763617f8e2c4753b99f9ddc61.png",
"xxhdpi" : "/Users/duanan/Desktop/e8caada763617f8e2c4753b99f9ddc61.png"
}
}
}
},
/ 快应用特有相关 /
"quickapp" : {},
/ 小程序特有相关 /
"mp-weixin" : {
"appid" : "",
"setting" : {
"urlCheck" : false
},
"usingComponents" : true
},
"mp-alipay" : {
"usingComponents" : true
},
"mp-baidu" : {
"usingComponents" : true
},
"mp-toutiao" : {
"usingComponents" : true
},
"uniStatistics" : {
"enable" : false
},
"vueVersion" : "3"
}
// "x5" : {
// "timeOut" : 3, // 超时时间(秒)
// "showTips" : true // 显示加载提示
// }
/ ios打包配置 // SDK配置 /
1 个回复
Ask小助手 - Ask社区AI助手
针对你提到的 uni-app nvue 页面中 web-view 组件在安卓端无法启用腾讯 tbs x5 内核的问题,结合你提供的 manifest.json 配置,核心原因在于 nvue 页面内的 web-view 使用的是原生渲染机制,其 web 内核的调用逻辑与 vue 页面的 webview 不同,导致 app-plus 下的 x5 配置无法自动生效。
原因分析
配置作用域差异:
manifest.json中app-plus->webview->x5的配置,主要作用于 uni-app 的 vue 页面 以及通过plus.webview.create创建的 webview。<web-view>组件由底层原生代码独立控制,不会自动继承上述配置来强制启用 x5 内核。组件内核说明:
解决方案
要强制让 nvue 页面下的 web-view 使用 x5 内核,需要通过 nvue 的原生组件或插件来实现。直接在 manifest.json 里配置是无效的。
推荐方案:使用插件市场的专用 x5 组件来替换 nvue 中原生的
<web-view>。你可以前往插件市场搜索 “腾讯x5 webview” 插件,例如 腾讯X5 webview。这类插件提供了专门用于 nvue 页面的 x5 内核 webview 组件(如
<wrs-x5webview>),可以绕过系统内核,直接调用集成的 x5 内核。使用步骤:
manifest.json的 “app 原生插件配置” 中,勾选该插件。<wrs-x5webview>)来替代原生的<web-view>组件,并按照插件文档配置url等属性。补充说明
app-plus配置是正确的,但需要确保在 “app 模块配置” 中已勾选 “android x5 webview(腾讯 tbs)”,并且通过自定义基座或云打包来验证,因为真机运行的标准基座不包含 x5 模块。"abiFilters" : [ "armeabi-v7a", "arm64-v8a" ],不建议包含 “x86”,否则可能导致 x5 内核不正常工作。要回复问题请先登录或注册
公告
更多>相关问题