Nativescript openUrl

Nativescript openUrl

有人知道如何使用应用程序 URL 方案从 NativeScript 应用程序在 iOS 上启动本机应用程序吗?这些 URL 正在返回 false,并且在通过 NativeScript utils 模块使用 openUrl 时未按预期启动应用程序。

  1. Facebook - openUrlModule.openUrl("fb://profile/<profileid>")
  2. Instagram - openUrlModule.openUrl("instagram://app")
  3. Youtube - openUrlModule.openUrl("youtube://app")

非常感谢任何帮助。

代码好像一样 (Android) https://github.com/NativeScript/NativeScript/blob/1ad23a3a78bbf95e2b89a82d9473498ee0dda350/tns-core-modules/utils/utils.android.ts#L299

虽然他们使用不同的 url 方案似乎

虽然这已在 NativeScript Slack 频道中进行了讨论,但请在此处为面临类似挑战的其他人获取答案。

在 iOS 9 中,Apple 要求应用程序将允许打开的 URL 方案列入白名单。这需要 Info.plist.

中的附加键
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>{SCHEME NAMES HERE}</string>
    <string>fb</string>
    <string>...</string>
</array>

在 NativeScript 中,将此键添加到 app > App_Resources > iOS 目录中的 Info.plist(如果您使用的是 CLI)。

(如果您使用的是 Telerik AppBuilder,请通过在项目资源管理器中右键单击您的项目名称然后 Edit Configuration > iOS Info.plist 来修改 Info.plist。这会生成一个 Info.plist App_Resources 目录中的所有默认设置。)

有关 iOS9 中新密钥的更多详细信息,请参阅此 Whosebug post:

希望对您有所帮助。