第一,介绍:随着ios10的发布,苹果对开发者开放了IMessage应用程序,开发人员现在可以创建他们自己的各种类型,并且可以内联iMessage内容的iMessage apps 包含简单的表情包到可以交互的复杂界面。
苹果专门为iMessage 开放了一个框架:framework-Messages framework。
1.生态系统:iMessage APP生态系统开始于一个完整的App Store,用户通过Message 应用程序都可以访问。这家App Store是完全独立于之前的应用商店,并将只显示iMessage-related应用。
iMessage apps的存在在一定程度上延展了印象中的iOS应用程序, 比如表情包(斗图岂能少了表情包)和自定义键盘;最重要的不同在于,这个iMessage App Store只存在于系统Messages之中, 你创建iMessage APP 不需要像创建iOS APP那样显示在手机主屏幕上, iMessage应用程序创建一个扩展的有效空白和无形的iOS应用程序。然而,如果你想开发一个包含iOS和iMessage的应用,你可以创建一个像任何其他类型的扩展的iMessage扩展。
最后要说的是, 这个 iMessage apps 只有效于iOS系统, 但它的内容可以在MacOS和watchOS上显示;此外,watchOS 3的用户能够查看最近使用的表情包,并可以从苹果的手表把这些表情直接直接发给联系人。
第二. 基本的表情包
为了让开发者快速简单的创建一个iMessage 表情表, Xcode提供了一个没有任何代码的模板! 这将是一个伟大的工具,使艺术家与没有编程知识的人都可以创建一个表情包。
使用新的Messages framework创建一个表情,你可以创建小的, 不大不小的, 大的表情, 这个尺寸,适用于所有的表情包。你只需要提供最大图像大小为每个表情在你的表情包中,如果需要缩减在某些设备上需要缩放, 系统会替你完成。
虽然没有严格限制,但是苹果建议的表情文件大小:
1. Small: 100 x 100 pt @3x scale (300 x 300 pixel image)
2. Medium: 136 x 136 pt @3x scale (378 x 378 pixel image)
3. Large: 206 x 206 pt @3x scale (618 x 618 pixel image)
也有其他的一些限制, 表情包的大小:
1. 文件中images不可以大于500kb;
2. iamge不可以小于100 x 100 pt (300 x 300 pixels).
3. iamge不可以大于206 x 206 pt (618 x 618 pixels).
4. 图片格式必须是 PNG, APNG, JPEG, GIF ;
打开Xcode, 创建一个新的工程, 选择iOS > Application, 你将会看到iMessage Application和Sticker Pack Application的可选项,第一个例子中, 选择Sticker Pack Application:
iMessage开发中常用的类:
MSMessageAppViewController :这个类为消息扩展提供了主视图控件,可用于呈现自定义用户界面,管理扩展状态,获取当前对话,追踪信息的发送等功能。
MSStickerBrowserViewController 、 MSStickerBrowserView 和
MSStickerBrowserViewDataSource :这些类可用于定制和呈现自定义或动态的贴纸浏览器(Sticker
browser)。如果要为贴纸浏览器提供动态内容,可以实施自定义的 MSStickerBrowserViewDataSource
。若要对默认贴纸浏览器的外观进行定制,可以提供自己的 MSStickerBrowserView ,并对浏览器尺寸、贴纸尺寸等内容进行定制。通过MSStickerView 子类还可获得进一步的定制能力。
MSConversation :这个类负责呈现对话,将其插入消息的输入字段即可用于发送文字、贴纸、附件,或消息对象。
MSMessage :这个类可用于创建交互式消息并可访问消息属性,例如发送人、消息所述的会话,以及消息所关联的可选URL等。
MSSession :这个类可用于对消息进行标识并进行后续更新,例如可将这一特性用于游戏或协作应用中。