watchOS并发症深入链接到应用程序中的页面

时间:2015-08-05 16:58:20

标签: watch-os-2 watch-os-3

我正在尝试构建一个应用程序,支持OS2上的多个复杂系列,如模块化大型,实用大型,圆形小型等,每个都显示来自应用程序的各种有意义的信息。我知道复杂性与OS1在用户交互方面的一瞥相似,即在用户点击它时打开应用程序,在那里没有特殊的交互。

瞥了一眼,我能够根据目前的浏览内容对应用程序进行深层链接,但我正在寻找一种方法来解决这些问题。

所以我的问题是当用户点击我的应用程序的复杂功能时,我会得到任何类型的上下文信息,说明这个复杂功能被点击等。 我想是否可以在上下文中获得CLKComplication对象。

enter image description here

感谢任何帮助。

2 个答案:

答案 0 :(得分:6)

ClockKit/CLKDefines.h中,您可以找到CLKLaunchedTimelineEntryDateKey常数 但是,您无法定义自己的用户信息,以帮助您确定启动应用时要执行的操作。

来自 CLKComplicationDataSource Protocol Reference

  

CLKLaunchedTimelineEntryDateKey

     

表示启动并发症的日期的键。此键的值是NSDate对象。当用户点击你的复杂功能时,ClockKit会将这个键包含在传递给扩展委托的handleUserActivity:方法的字典中。

     

在watchOS 2.0及更高版本中可用。

答案 1 :(得分:1)

由于您可以通过CLKLaunchedTimelineEntryDateKey获取抽头时间表条目的日期,因此您可以通过制作"固定第二个"来获得并发症类型(家庭)。对于特定类型的时间表输入。

固定秒应由NSDateComponents计算,然后转换为NSDate,您可以传递给CLKComplicationTimelineEntry

例如,您可以指定modularSmall条目的日期结束时间为10秒,但modularLarge条目的日期结束时间为20秒。因此,点击日期9:41:10 AM的条目应为modularSmall类型,日期为9:41:20的条目应为modularLarge类型。