iOS10中Messages独立应用与扩展插件详析(一)

简介: iOS10中Messages独立应用与扩展插件详析

一、引言


       Messages是iOS系统中原生的信息应用,其既可以通过运营商网络发送短信息,也可以通过互联网进行类似微信类社交软件的即时聊天。但是由于其封闭性与功能的单一,使用其进行即时聊天的用户并不多。随着iOS10系统的推出,或许可以改变这一现状。在iOS10中,Messages的功能被扩展的十分强大,通过Messages,用户可以分享图片,音乐,视频,可以随手涂鸦,使用自定义的表情包,可以进行Apple Pay支付,购物,甚至可以在Messages中玩游戏。并且,上面所提到的这些功能都全面开发出了接口供开发者进行开发与扩展。


       在iOS10中,开发者可以进行与Messages相关的开发有两类:独立的Messages应用与Messages应用扩展。其中,Messages应用扩展需要依附一个宿主App而存在。无论哪种类型的Messages应用,其都又分为两类,StickerPicks(表情包)与iMessage Apps(Messages应用)。


二、开发表情包StickerPicks


1.开发独立的表情包


       Sticker Picks可谓是iOS10中一个十分强大的新功能。在iOS10系统的iPhone上,Messages应用中会内嵌一个Message App Store,用户可以直接从里面下载针对于Messages的独立表情包和独立第三方应用。开发者也可以独立开发表情包发布到这个Message App Store中。


       开发Sticker Picks表情包十分简单,开发者可以不用写一句代码,将整理好的表情进行打包提交即可完成。使用Xcode8创建一个新的工程,选择Sticker Pack Application模板,如下图所示:


image.png


创建出工程后,可以发现模板中没有任何代码文件,只有一个Stickers.xcstickers包。将准备好的表情包图片导入这个Stickers中,其中支持静态图片,也支持动态表情gif图片。关于导入的图片,有如下几条规则:


1.图片文件的格式必须是PNG、APNG、GIF或者JPEG。


2.单个文件的大小不能超过500KB。


3.最优的效果是当图片尺寸在100*100到206*206之间。


注意:在提供图片的时候,开发者只需要提供@3倍图即可,即最优尺寸在300*300到618*618之间的图片。系统会自动生成@2与@1倍图。


       开发的表情包会显示在Messages应用的工具中,需要注意,在表情列表的排版中,每个表情缩略图只支持3种尺寸的排版,对应的尺寸分别如下:


Small类型:100*100


Medium类型:136*136


Large类型:206*206


在Xcode中,可以对要使用的模板进行选择,如下图:

image.png



在模拟器中运行工程,Messages中效果如下图:

image.pngimage.png

           


和普通iOS应用程序一样,将设备选择为Generic iOS Device后直接Archives即可将表情包提交到AppStore,审核通过后,即可在Message App Store中进行下载。


小提示:其实StickerPicks翻译成表情包并不合适,其更有一层贴纸的概念。实际上其也确实有贴纸的功能,在Messages应用中,用户可以通过长按移动手势,来将某个Sticker添加在另一个Sticker上面。如下图:

image.png



2.开发寄宿于宿主App的表情包扩展


       扩展表情包与独立表情包最大的不同在于扩展需要寄宿于某个宿主App中,创建扩展target,选择Sticker Pick Extension,如下图,之后和独立表情包开发过程一致。

image.png



3.关于表情包的icon图标


       StickerPicks的图标和宿主App并不共用,其需要一套独特尺寸的icon,尺寸如下:

image.png



效果如下图所示:

image.png



目录
相关文章
|
1月前
|
开发框架 前端开发 Android开发
Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势
本文深入探讨了 Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势。这对于实现高效的跨平台移动应用开发具有重要指导意义。
160 4
|
15天前
|
JavaScript 前端开发 iOS开发
ios样式开关按钮jQuery插件
ios样式开关按钮jQuery插件
39 7
|
1月前
|
安全 Swift iOS开发
Swift 与 UIKit 在 iOS 应用界面开发中的关键技术和实践方法
本文深入探讨了 Swift 与 UIKit 在 iOS 应用界面开发中的关键技术和实践方法。Swift 以其简洁、高效和类型安全的特点,结合 UIKit 丰富的组件和功能,为开发者提供了强大的工具。文章从 Swift 的语法优势、类型安全、编程模型以及与 UIKit 的集成,到 UIKit 的主要组件和功能,再到构建界面的实践技巧和实际案例分析,全面介绍了如何利用这些技术创建高质量的用户界面。
33 2
|
1月前
|
JSON 前端开发 API
探索iOS开发之旅:打造你的第一个天气应用
【10月更文挑战第36天】在这篇文章中,我们将踏上一段激动人心的旅程,一起构建属于我们自己的iOS天气应用。通过这个实战项目,你将学习到如何从零开始搭建一个iOS应用,掌握基本的用户界面设计、网络请求处理以及数据解析等核心技能。无论你是编程新手还是希望扩展你的iOS开发技能,这个项目都将为你提供宝贵的实践经验。准备好了吗?让我们开始吧!
|
1月前
|
Swift iOS开发 UED
如何使用Swift和UIKit在iOS应用中实现自定义按钮动画
本文通过一个具体案例,介绍如何使用Swift和UIKit在iOS应用中实现自定义按钮动画。当用户点击按钮时,按钮将从圆形变为椭圆形,颜色从蓝色渐变到绿色;释放按钮时,动画以相反方式恢复。通过UIView的动画方法和弹簧动画效果,实现平滑自然的过渡。
59 1
|
2月前
|
Swift iOS开发 UED
如何使用Swift和UIKit在iOS应用中实现自定义按钮动画
【10月更文挑战第18天】本文通过一个具体案例,介绍如何使用Swift和UIKit在iOS应用中实现自定义按钮动画。当用户按下按钮时,按钮将从圆形变为椭圆形并从蓝色渐变为绿色;释放按钮时,动画恢复原状。通过UIView的动画方法和弹簧动画效果,实现平滑自然的动画过渡。
62 5