可以支持發送的類型
文本
貼紙(表情包)
視頻文件
交互式的消息
貼紙(表情包)
iMessage的app
這兩種類型可以通過獨立的應用和擴展創建。
滿足的條件類型
必須是PNG APNG GIF JPEG的一種
文件大小小於500KB
圖片的尺寸應該大於100px x 100px 小於206px x 206px
支持允許使用@3x的圖片 300px x 300px 到 618px x 618px 系統會自動生成@2x,@1x的圖片
消息支持三種貼紙大小
小圖 100px x 100px @3x(300px x 300px)
中等 136px x 136px @3x(408px x 408px)
大圖 206px x 206px @3x(618px x 618px)
系統要求
mac10.10.4之後
Motion5.2.3之後 -> 下載地址
創建Motion的工程
下載模板工程
啟動Motion軟件
創建新的Motion工程 File->New
選擇Motion Project
在右邊可選項
點擊右下角打開
| Size | Frame Dimensions |
| ---- | ---------------- |
| 小圖 | 300x300 |
| 中圖 | 408x408 |
| 大圖 | 618x618 |
Preset->Custom
Field Order -> None
Aspect Ratio -> Square
Duration->2 seconds
輸入合適的圖片尺寸
單擊左邊File選項
選擇剪輯 圖形 圖像 序列選擇導入
導入之後 你可以選擇內置的動畫效果
選擇左上角Library的選項
選擇Behaviors category選擇可用的分類
點擊基本的動作選擇放大和縮小
拖動行為到對象層應用
在ToolBar 選擇Text工具或者按下T快捷鍵
選擇Canvas
輸入你的文本按下Escape
點擊Text的Inspector標簽 選擇字體類型 大小 對其方式 其他
選擇Share->Export Image Sequence
點擊Export選擇PNG圖片
點擊Duration菜單選擇整個工程
點擊下一步 會保存在你的驅動器。
在用戶插入一個Message App可以參考MSMessageAppViewController
創建一個自定義或者動態的貼紙浏覽框可以參考MSStickerBrowserViewController
插入文本 貼紙 視頻文件到Message App 輸入框查看 MSConversation
創建帶有特定的應用數據交互的消息 查看MSMessage
更新交互式信息(例如,創建游戲或應用程序協作 查看 MSSession
@property(nonatomic, strong, readonly) MSConversation *activeConversation;
獲取當前聊天的對象
發送簡單的文本
[self.activeConversation insertText:@"Text Message" completionHandler:nil];
此方法異步執行
發送消息對象
必須設置URL屬性和Layout屬性
@property (nonatomic, copy, nullable) NSURL *URL;
使用NSURLComponents
創建生成URL
屬性
@property(nonatomic, copy) MSMessageLayout *layout;
使用MSMessageTemplateLayout
創建生成layout
屬性
下面是這個layout的界面模板
怎麼使用模板?
實例化一個MSMessageTemplatelayout
的對象
設置屬性 根據布局的需要設置不同的類型
把創建的MSMessageTemplateLayout
的對象賦值給MSMessage
的layout
的屬性
不允許繼承MSMessageTemplateLayout
類
1 發送簡單的圖片
MSMessageTemplateLayout *layout = [[MSMessageTemplateLayout alloc]init];UIImage *image = [UIImage imageNamed:@"gb_simple_icon"]; layout.image = image;
2 發送文本和圖片
在上面的代碼上面添加
layout.imageTitle = @"Image Title";
3 發送文本圖片 圖片副標題
layout.imageSubtitle = @"Image SubTitle"
這樣我們根據MSMessageTemplateLayout
類裡面的屬性控制模板的內容現在,大家可以自行設置查看樣式
圖片一定要滿足下面
圖片在工程裡面
圖片類型為 GIF PNG JPG JPEG任一
圖片大小不大於500KB
圖片尺寸在300px x 300px - 618px x 618px
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"eat" ofType:@"gif"]]; MSSticker *sticker = [[MSSticker alloc] initWithContentsOfFileURL:url localizedDescription:@"Localized" error:nil]; [self.activeConversation insertSticker:sticker completionHandler:nil];
視頻也要保存在工程裡面
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"video" ofType:@"mov"]]; [self.activeConversation insertAttachment:url withAlternateFilename:nil completionHandler:nil];
MSMessagesAppPresentationStyleCompact
設置界面大小和鍵盤大小一致
MSMessagesAppPresentationStyleExpanded
設置界面的大小和iMessage的界面大小
Demo的下載地址