【问题标题】:Whatsapp open url code opens Boltt Health App instead of whatsapp in iosWhatsapp 打开 url 代码在 ios 中打开 Boltt Health App 而不是 whatsapp
【发布时间】:2019-03-19 17:48:49
【问题描述】:

我面临一个非常有趣的问题。我已经编写了从我的应用程序中打开 WhatsApp 的代码(如下所示)。当设备中未安装 whatsapp 时,我还处理了向用户显示敬酒消息。此代码运行良好,但如果设备安装了 Boltt Health 应用程序 (https://itunes.apple.com/in/app/boltt-health-fitness-anytime/id1244375641?mt=8) 并且没有 Whatsapp,那么它不会显示“请从 App Store 安装 whatsapp”的 Toast 消息,而是打开 Boltt Health 应用程序

**注意如果设备中没有Boltt App,一切正常

我打开whatsapp的代码

let urlWhats = "whatsapp://send?phone=\(mobileNo)&text=\(msg)"

    if let urlString = urlWhats.addingPercentEncoding(withAllowedCharacters: NSCharacterSet.urlQueryAllowed) {
        if let whatsappURL = NSURL(string: urlString) {
            if UIApplication.shared.canOpenURL(whatsappURL as URL) {
                if #available(iOS 10.0, *) {
                    UIApplication.shared.open(whatsappURL as URL, options: [ : ],  completionHandler: nil)
                } else {
                    UIApplication.shared.openURL(whatsappURL as URL)
                }
            } else {
                CommonMethods.showToast(messsage: "Please install whatsapp from App Store", view: view)
            }
        }
    }

这是一个非常奇怪的问题,不胜感激。 提前致谢

【问题讨论】:

  • 你是在真机还是模拟器设备上试用?
  • 我觉得你用的是模拟器,在真机上试试吧。
  • @OnurTuna 我正在使用设备.. 在 iphone 6s 和 iphone 7 上测试过.. PS:无法在模拟器上下载 Whatsapp 和 Boltt Health

标签: ios swift whatsapp openurl


【解决方案1】:

我从这个应用程序中提取了 Info.plist。出于某种原因,它同时注册了whatsapp URL 方案和似乎是 facebook 的 URL 方案:

我不知道这个应用为什么会这样做,而且它可能不应该这样做。

我不确定你能做些什么; URL 方案未注册或受 Apple 保护。您可以尝试联系应用程序开发人员并询问他们为什么要注册这些 URL 方案。也许这是一个错误。

我注意到该应用确实在其LSApplicationQueriesSchemes 中包含了 WhatsApp 和 FaceBook,因此他们可能不小心将它们包含在 URL 类型键中并忘记删除它们。

【讨论】:

  • 好的,这可能是我被定向到 Bolth Health 应用程序的原因。但是你是如何获得他们的 Info.plist 的
  • 我使用 iMazing 从手机下载 IPA
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-04-05
  • 1970-01-01
  • 2017-03-24
  • 1970-01-01
  • 2021-10-08
  • 2018-04-24
  • 2020-07-16
相关资源
最近更新 更多