HEDA
HEDA
  • 发布:2024-10-20 10:15
  • 更新:2024-10-20 22:42
  • 阅读:177

【报Bug】APP打包后webView加载hybrid资源找不到

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 11 家庭中文版 23H2

HBuilderX类型: 正式

HBuilderX版本号: 4.29

手机系统: Android

手机系统版本号: Android 12

手机厂商: 迈冲工业平板

手机机型: FP10G20

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

app使用webview加载hybrid中的uni h5

预期结果:

正常运行

实际结果:

webview中仅首页正常,切换页面报错

bug描述:

app使用webview加载hybrid中的html,其中html也是uni的h5项目。

app运行,使用webView加载hybrid资源一切正常。
打包后加载正常,首页正常,切换页面后页面显示“连接服务器超时,点击屏幕重试”
控制台报错:
Faled to fetch dmamicaly imported modle. le/dataluser/0/com.xx.xx/files/apps/_UNI_XXX/static/html/assets/pages-stalstic-index.BufTgK.js

2024-10-20 10:15 负责人:无 分享
已邀请:
BoredApe

BoredApe - 有问题就会有答案。

webview 打开的是本地项目吗?如果是本地项目不能直接通过文件路径访问。需要使用内置服务器

可以参考一下《网赚游戏》中首页使用web-view的方式来解决跨域问题。

<web-view v-if="platform=='android'" :src="'/hybrid/html/plugins/h5/index.html'" class="webview" ref="iframe"></web-view>    
<web-view v-if="platform=='ios'" :src="'http://localhost:13131/_www/hybrid/html/plugins/h5/index.html'" class="webview" ></web-view>

iOSmanifest.json中开启miniserve,安卓不需要特殊配置

"capabilities" : {    
    "plists" : {    
        "DCloudConfig" : {    
            "miniServer" : true    
        }    
    }    
}

试试这种方式能否解决问题。

  • HEDA (作者)

    Android App webview打开本地的uni web项目

    2024-10-21 09:37

  • BoredApe

    回复 HEDA: 打开本地web项目。需要先在app启一个服务,官方解决方案。请参考上述的网赚游戏实现方式。也可以在插件市场搜索类似插件实现

    2024-10-21 13:10

要回复问题请先登录注册