uni-app ios端 urlschemewhitelist填写BUG

uni-app ios端 urlschemewhitelist填写BUG

开发环境 版本号 项目创建方式
Mac 13.3.1 HBuilderX

操作步骤:

  • 未安装,返回错误数据
  • 已安装,返回正确数据

预期结果:

  • 安装后,返回正常数据

实际结果:

  • 未安装,返回错误数据
  • 已安装,返回错误数据

bug描述:

  • 云端打包默认添加应用访问白名单列表能否删除?
  • 或者提交打包的数据为优先,默认添加的数据次之
  • ios端 urlschemewhitelist添加了内容,运行一直返回错误数据

更多关于uni-app ios端 urlschemewhitelist填写BUG的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app ios端 urlschemewhitelist填写BUG的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在 uni-app 中,urlschemewhitelist 是用于配置 iOS 平台上允许通过 URL Scheme 跳转的白名单。如果在使用 urlschemewhitelist 时遇到 BUG,可能是由于配置不正确或平台限制导致的。以下是一些常见的问题和解决方法:


1. 配置格式不正确

  • 问题urlschemewhitelist 的配置格式不正确,导致白名单未生效。
  • 解决方法: 确保在 manifest.json 文件中正确配置 urlschemewhitelist。例如:
    {
      "app-plus": {
        "distribute": {
          "ios": {
            "urlschemewhitelist": ["weixin", "alipay"]
          }
        }
      }
    }
    
    注意:urlschemewhitelist 是一个数组,每个元素是一个 URL Scheme 的前缀(不带 ://)。

2. 未重新打包

  • 问题:修改 manifest.json 后未重新打包,导致配置未生效。
  • 解决方法: 每次修改 manifest.json 后,需要重新打包 iOS 项目(运行 npm run build:ios 或通过 HBuilderX 打包)。

3. iOS 平台限制

  • 问题:iOS 平台对 URL Scheme 的使用有一定的限制,某些 Scheme 可能无法直接跳转。
  • 解决方法
    • 确保目标应用支持 URL Scheme 跳转。
    • 如果需要跳转到第三方应用(如微信、支付宝),请确保目标应用已安装。
    • 某些 Scheme 可能需要额外的配置或权限。

4. 未处理 URL Scheme 跳转逻辑

  • 问题:虽然配置了 urlschemewhitelist,但未在代码中处理 URL Scheme 跳转逻辑。
  • 解决方法: 在 App.vue 或其他页面中,监听 onLaunchonShow 事件,处理 URL Scheme 跳转。例如:
    export default {
      onLaunch(options) {
        if (options.query && options.query.url) {
          const url = decodeURIComponent(options.query.url);
          console.log('URL Scheme:', url);
          // 处理跳转逻辑
        }
      }
    }
    

5. HBuilderX 版本问题

  • 问题:某些 HBuilderX 版本可能存在 BUG,导致 urlschemewhitelist 配置无效。
  • 解决方法: 更新 HBuilderX 到最新版本,并重新打包项目。

6. 检查控制台日志

  • 问题:无法确定问题原因。
  • 解决方法: 在 Xcode 中运行项目,查看控制台日志,检查是否有相关错误信息。

7. 测试 URL Scheme 是否有效

  • 问题:目标 URL Scheme 可能无效。
  • 解决方法: 使用 Safari 浏览器或其他工具测试目标 URL Scheme 是否有效。例如:
    weixin://
    alipay://
回到顶部