iOS9:canOpenURL 为 WhatApp 的 url scheme 返回 false

标签 ios objective-c ios9 whatsapp url-scheme

在我当前的项目中,我需要通过 iOS 应用在 whatsapp 上共享文本。

这是我在 whatsapp 上分享文本的代码:

NSURL *whatsappURL = [NSURL URLWithString:@"whatsapp://send?text=Hello%2C%20World!"];
if ([[UIApplication sharedApplication] canOpenURL: whatsappURL]) {
    [[UIApplication sharedApplication] openURL: whatsappURL];
}

但是 canOpenURL 在 iOS9 中总是返回 false。

是否有任何 iOS9 隐私政策? 谁能帮帮我?

最佳答案

在 iOS 9 中,您必须在 Info.plist 中的 LSApplicationQueriesSchemes 键(字符串数组)下将您的应用程序想要查询的任何 URL 方案列入白名单:

例如:

enter image description here

因此在您的情况下,您必须指定 whatsapp 而不是 fbtwitter

请注意,此机制仅适用于 canOpenURL 而不适用于 openURL。您无需在 Info.plist 中列出方案即可使用 openURL 打开它。 希望对您有所帮助。

关于iOS9:canOpenURL 为 WhatApp 的 url scheme 返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34329595/

相关文章:

iPhone游戏横向方向问题

swift - 快速编程中点击的图像区域的坐标

ios - UIViewCollection 在模态视图 Controller 中旋转后调整单元格大小

ios - setNeedsDisplayInMapRect - 已弃用的 iOS7

ios - 如何使 UISearchBar Objective C 向 API 请求信息并重新填充 TableViewController。?

ios - Xcode 设置 View Controller 身份 iOS OpenGL

ios - 更改 HeaderInSection 的 UITableView 高度?

objective-c - 在类方法中使用 self

ios - `UIRefreshControl endRefreshing` 不工作

ios - 我可以在没有蓝牙耳机的情况下使用 WKAudioFilePlayerItem 在 watchOS 2 上播放声音吗?