1. App Extension Study 4

    Author: Charles Zhu
    Summary: ios8 app extension

    1 开始

    本篇介绍剩下的Custom Keyboard,之前的3篇:

    • 第一篇: 介绍了Extension的基本概念/运行周期/数据共享等通用技术细节
    • 第二篇介绍并实践:widget,share,action和Photo Editing
    • 第三篇介绍并实践了Sync和File Procvider

    2 Custom Keyboard

    iOS8终于对第三方输入法开放,引起一片毋需越狱的呼声,这就是通过extension实现的。在以前,app可以单独实现适合自己的文本输入法;而iOS8上,如果用户在设置中添加第三方的键盘,就会对所有app可见(如果app没有禁止使用第三方输入法的话)。对于重视用户隐私的苹果公司而言,虽然开放了输入法的扩展,但是对于用户数据和隐私的保护是非常重视,因此在开发的时候要时刻关注。

    2.1 第三方输入法要具备的特征

    输入法的核心是要对用户的点击等手势及时的响应,提供可选的文本和插入文本等。除此之外,重要的就是要能够切换到下一个输入法。苹果文档中列出了一些特征 ...

    Tagged as : ios8 AppExtension
  2. App Extension Study 3

    Author: Charles Zhu
    Summary: ios8 app extension

    1 开始

    第一篇介绍了Extension的基本概念,Extension的运行周期,和containing app的数据共享等细节,第二篇介绍并实践了4种extension,而本篇就要介绍Sync和File Provider。

    2 Finder Sync (OS X)

    因为extension要运行在10.10的OS X上,由于没升级,所以本节就侧重“理论”了。

    2.1 含义

    顾名思义,就是保持本地的某些文件夹和远程的文件夹内容保持一致。它可以让用户在Finder实时察觉同步的状态并随时控制同步的进程。比如说可以在文件夹上加badge或是文字来告诉用户当前的状态,或是在Finder窗口添加工具栏方便打开监视的文件夹或强制退出同步(不知道网盘类的应用如何集成该extension呢)。因此,Finder Sync的host app只能是Finder
    Finder Sync可以:

    • 注册一系列文件夹进行同步
    • 当用户打开 ...
    Tagged as : ios8 AppExtension
  3. App Extension Study 2

    Author: Charles Zhu
    Summary: ios8 app extension

    1 开始

    上一篇介绍了Extension的基本概念,Extension的运行周期,和containing app的数据共享等细节,这节开始实践。需要说明的本文不会覆盖所有类型,比如Finder Sync类型是OS X独有的,这里会一带而过。

    2 Widget

    Widget就是Today extension,这个大家比较熟悉:下拉通知中显示的股票信息就是一个widget。从这里我们也可以看出widget的特点:

    1. 可以自定义UI
    2. 必定和containing app有着数据共享

    2.1 widget 工程模版

    在已有工程中新建一个target,选择Application Extension中的Today Extension,这时工程中增加了如下文件:
    widgetImg
    先来看Info.plist,主要增加了NSExtenstion的key,内容如下:

    <key ...
    Tagged as : ios8 AppExtension
  4. App Extension Study 1

    Author: Charles Zhu
    Summary: ios8 app extension

    Intro

    app extension是iOS8引入的功能,使得iOS8也有了“插件”系统。虽然一时还不知道可以做些什么应用,但我相信会有杀手级的extension出现而且某种程度会影响到app的生态系统发展。所以,我们需要了解并熟悉如何制作app extension。本系列会以官方文档为指引,按图索骥,拨开app extension的面纱(主要侧重iOS)。

    App Extension

    有很多关于App Extension的介绍,所以就不详细介绍,这里侧重介绍Extension的生命周期以及和其他app的通信。

    术语

    • host app: 用户在某个app中启用了extension,该app就叫host app
    • containing app: extension不能单独作为target存在,必须依附在某个具有普通app的工程内,该app就是containing app。一个containing app可以有多个extension。
    • app extension:

    当下载了含有extension的containing app,那么如果某个app可以使用该extension ...

    Tagged as : ios8 AppExtension

Page 1 / 1