3D-Touch那些事

3D-Touch自6s发售之初,到现在已有一年半载,作为一个可以说是改变交互习惯的操作,我们来看看它究竟给予用户带来了什么。


1. Home Screen Quick Actions

在使用Home Screen Quick Actions过程中,是一个渐进的学习过程,首先,需要熟悉重击可以唤出Home Screen Quick Actions,轻击才是删除App,学习成本一般,但是直到现在我还是不能很好的删除App。Home Screen Quick Actions的开发也很简单,可以通过Info.plist中添加对应配置项。

  • 官方文档
  • 可以自定义icon,也可以使用官方提供,但是限制很多,包括尺寸以及不支持动态替换,这里Apple没有提供setImage接口至今,可以对应看到官方的App如图片可以看到最近图片,唉都是给自家用,三方app除非用私有API,但这得不偿失。

2. Home Screen Quick Actions限制下的扩展

1. 动态化配置

除了Info.plist里面写死一份配置以外,还可以通过代码中动态更新Quick Action,每当用户启动App时候,可以从服务端动态下载一份json数据来动态更新配置,方法简单,代码如下:

self.array = GetArrayfromServer;
[[UIApplication sharedApplication] setShortcutItems:self.array];

着重要关注的是下载、更新Quick Action的时机,避免出现读写异常。

2. 用户自定义配置

用户可以在App内部自行操作想要配置的QuickAction,满足个性化需求,由于结构相关简单,没有使用SQLite或FMDB,直接一个tableView本地配置一份plist。利用dispatch_barrier_async控制好读写即可。

  - (NSArray*)readInfoFromFile
  {
      __block NSArray* tmpArray
      dispatch_sync(_queue, ^{
           tmpArray = [[NSArray alloc] initWithContentsOfFile:self.filePath];
      });
      return tmpArray;
  }

 - (void)saveArrayToPlist:(NSArray*)localArray
 {
      dispatch_barrier_async(_queue, ^{
           BOOL writedOK = [localArray writeToFile:self.filePatch atomically:YES];
           if (writedOK) {
                     // do something after save config          
          }
      });
 }

3. 更多

用户的自定义设置总是觉得负责,这时候自动记录用户的行为可以作为一个很好的实现方式,统计用户进入过那些页面,为每个页面记录对应的进入次数,为QuickAction进行排序,自动更新本地QuickAction配置。从很多App中都可以找到用户自定义的身影,比如天猫App,支持的就很好,可以让用户自主选择想要快速跳转的页面,活跃度也很高。

3D-Touch那些事_第1张图片
Paste_Image.png

3. iOS 10下的Screen Quick Action的升级

为了丰富桌面3D-Touch重击的信息内容,将原先Widget中的内容一行并入,相信之前Widget+QuickAction的叠加会让用户在段时间内看到更多有用信息。适配博客,3D-touch究竟会走多远,是个花哨的交互,还是可以解决很多实际问题的方式,这些还需要不断摸索体验。

你可能感兴趣的:(3D-Touch那些事)