你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發基礎 >> 開始一步一步學習Message App Extension

開始一步一步學習Message App Extension

編輯:IOS開發基礎

開始一步一步學習Message App Extension

可以支持發送的類型

  • 文本

  • 貼紙(表情包)

  • 視頻文件

  • 交互式的消息

擴展支持兩種類型

  • 貼紙(表情包)

  • iMessage的app

這兩種類型可以通過獨立的應用和擴展創建。

1. 貼紙(表情包)

滿足的條件類型

  • 必須是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菜單選擇整個工程

  • 點擊下一步 會保存在你的驅動器。

iMessage Apps

  • 在用戶插入一個Message App可以參考MSMessageAppViewController

  • 創建一個自定義或者動態的貼紙浏覽框可以參考MSStickerBrowserViewController

  • 插入文本 貼紙 視頻文件到Message App 輸入框查看 MSConversation

  • 創建帶有特定的應用數據交互的消息 查看MSMessage

  • 更新交互式信息(例如,創建游戲或應用程序協作 查看 MSSession

MSMessageAppViewController

@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屬性

MSMessageTemplateLayout

下面是這個layout的界面模板

怎麼使用模板?

  • 實例化一個MSMessageTemplatelayout的對象

  • 設置屬性 根據布局的需要設置不同的類型

  • 把創建的MSMessageTemplateLayout的對象賦值給MSMessagelayout的屬性

  • 不允許繼承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的下載地址


  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved