zoukankan      html  css  js  c++  java
  • Apple Watch 1.0 开发介绍 1.4 简介 使用iOS技术

    WatchKit extension可以使用iOS app同样的技术,但是由于他是extension,使用有些技术的时候会有限制,有些不推荐使用。下面是一些介绍以及什么时候使用什么技术:

    • 有些需要权限的操作需要在iPhone上同意。有些特殊的技术需要用户允许,比如位置信息。在WatchKit上使用这些技术会在iPhone上触发允许的提示。Apple Watch也会显示它自己的提示,比如通知用户在iPhone上查看权限申请。
    • 不要使用后台执行技术。WatchKit extension只有在用户操作对应WatchKit app时才运行,可以被认为是前台插件。因此,WatchKit extensionbu不能使用后台模式。
    • 避免使用长时间运行的技术。用户停止对应的WatchKit app时WatchKit extensino会立刻挂起。由于WatchKit app交互通常都比较简短,请求数据回来的时候extension可能已经挂起了。 

    执行长时间的任务的最好方法是让iOS来执行。比如,比起在WatchKit extension中启动位置信息服务,在iOSapp中启动更好。iOS app可以收集需要的数据然后放到共享区域让extension后面来使用。使用openParentApplication:reply:方法来初始化任务和接收结果,或者使用共享数据来在iOS app和WatchKit extension通讯。

     

    支持Handoff

    Apple Watch可以使用handoff来支持在其他设备上完成任务。使用WKInterfaceController的updateUserActivity:userInfo:webpageURL:方法来创建活动然后发送给其他设备。

    除了glance,Apple Watch不处理其他设备创建的活动。在glance控制器中,可以使用活动的信息来筛选主app有用的信息。如果用户点击glance启动app,WatchKit会把活动的信息发送给app的主控制器。控制器可以根据内容来对应的更新界面。

     

    远程事件以及正在播放的信息

    Apple Watch使用远程事件来管理匹配iPhone视频或音频的播放。iOS app使用MPRemoteCommandCenter对象注册了才会在有正在播放的时候自动收到事件。在WatchKit extension中不需要做其他工作来支持远程事件。

    注意:像喜欢,不喜欢或收藏,Apple Watch使用MPFeedbackCommand对象的localizedShortTitle替代了localizedTitle。

    Now Playing glance自动显示当前播放app的“Now playing”信息。iOS app使用MPNowPlayingInfoCenter对象提供信息。当app播放内容,应该更新nowPlayingInfo信息。AppleWatch会自动取回这个信息来显示。点击正在播放的标题,如果有可用的app的话WatchKit会启动app。

     

  • 相关阅读:
    leetcode第四题
    解决Hystrix主线程结束,子线程拿不到request
    RabbitMQ如何保证消息的顺序性+解决消息积压+设计消息队列中间件
    RabbitMQ 如何保证消息不丢失?
    redis布隆过滤器的使用
    PageHelper自定义count
    mysqlbinlog 工具分析binlog日志
    linuxubuntu常用命令
    MySQL 常用命令
    Ubuntu 16.04 安装 Apache, MySQL, PHP7
  • 原文地址:https://www.cnblogs.com/fengquanwang/p/4469136.html
Copyright © 2011-2022 走看看