You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Branch.io在iOS应用未安装时直接跳转至App Store?

iOS DeepLink未安装时直接跳转App Store的解决方案
  • 前端页面实现逻辑
    先尝试唤起App的DeepLink/Universal Links,同时设置150-200ms的极短定时器,若定时器触发时页面仍处于活跃状态(说明App未被唤起),立即跳转App Store直接链接:

    // 前端示例代码
    function openAppOrStore() {
      // 尝试唤起App的DeepLink
      const deepLinkUrl = "your-app-scheme://target-path";
      window.location.href = deepLinkUrl;
      
      // 定时器判断跳转是否失败
      setTimeout(() => {
        // 跳转App Store直接链接
        const appStoreUrl = "itms-apps://itunes.apple.com/cn/app/your-app-id";
        window.location.href = appStoreUrl;
      }, 200);
    }
    

    注意:定时器时长不宜过长,避免用户等待;同时需兼容iOS Safari的弹窗提示逻辑。

  • Universal Links回调优化
    若使用Universal Links,可在关联的域名页面中,通过判断页面是否因Universal Links唤起失败而打开,若为真则直接重定向到App Store链接。比如在window.onload事件中做校验处理。

  • 原生端判断逻辑(Swift示例)
    若有原生应用控制权限,可直接在跳转逻辑中判断App是否可打开,失败则跳转App Store:

    func handleDeepLinkOrStore() {
      guard let deepLinkUrl = URL(string: "your-app-scheme://target-path") else { return }
      let appStoreUrl = URL(string: "itms-apps://itunes.apple.com/cn/app/your-app-id")!
      
      if UIApplication.shared.canOpenURL(deepLinkUrl) {
        UIApplication.shared.open(deepLinkUrl)
      } else {
        UIApplication.shared.open(appStoreUrl)
      }
    }
    

    注意:需在Info.plist中配置LSApplicationQueriesSchemes,添加你的App scheme,否则canOpenURL会返回false。

内容的提问来源于stack exchange,提问作者Chwizdo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 19:58:19