【问题标题】:Opening my app from a Reminder on IOS using objective C使用 Objective C 从 IOS 上的提醒打开我的应用程序
【发布时间】:2016-08-31 22:09:07
【问题描述】:

我创建了一个应用程序,它可以创建提醒、添加带有结构化位置的警报,并将 URL 设置为我的应用程序。我的意图是当用户在他们的手机上看到这个提醒并点击它时,它应该打开我的应用程序。但这似乎不起作用。

起作用的是我的应用确实创建了提醒,它是地理围栏的,只是当用户点击提醒时,他们会被带到 IOS 日历而不是我的应用。

这是我用来设置提醒 URL 的代码:

  NSString* url = [NSString stringWithFormat: @"HealthTracker://"];
  self.reminder.URL = [NSURL URLWithString: url];

我还更新了 pinfo.list 中的 URL 方案以包含应用程序的名称。

Screenshot of pinfo.list

还有什么我应该做的吗?

我的目标是 IOS 9.1,并使用我的 iPhone 6 进行测试。

【问题讨论】:

    标签: ios objective-c url icalendar app-launcher


    【解决方案1】:

    与日历条目不同,提醒不支持 URL。运行提醒应用,无法添加 URL。

    EKReminder 具有 URL 属性(继承自 CKCalendarItem),但提醒应用本身不支持 URL。

    我遇到了同样的问题并结束生成日历事件,以便用户可以从事件中打开我的应用程序。

    我向 Apple 提交了增强请求,要求提醒应用程序支持 URL。也许在 iOS 10 中。

    【讨论】:

    • 你有这个增强的雷达吗?你把它张贴在公开雷达上吗?
    • @JAL Mine 已作为另一个副本关闭(10870474 - 仍处于打开状态)。我也没有在公开雷达上发帖。
    • @TYY 您打开其他应用的应用与此问题无关。您只需要确保您的应用程序正确注册了HealthTracker 方案。并且您的 Info.plist 表明您的设置不正确。在 Xcode 中为您的目标选择 Info 选项卡,然后转到“URL Types”部分。您需要提供您的应用 id、图标、url 方案和角色。
    • 谢谢@rmaddy。我的应用程序还创建事件。我将此添加到它创建的事件中,它现在确实填写了 URL 部分。但是,当您单击 URL 时,日历应用程序不会打开我的应用程序。它只是显示为文本。在我的应用程序的另一部分,我有启动 Google Maps 和 Apple Maps 程序的代码。要在那里打开一个应用程序,我有这行代码:BOOL opened = [[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]]; 你的代码是否有任何可以打开应用程序的东西?还是像 maps.com 这样的常规 URL?
    • 看来您已删除并重新发布了您的评论。请参阅我之前的评论。
    猜你喜欢
    • 1970-01-01
    • 2015-02-22
    • 1970-01-01
    • 1970-01-01
    • 2014-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多