Messages框架詳細(xì)解析(一) —— 基本概覽

版本記錄

版本號 時間
V1.0 2018.02.04

前言

Messages框架創(chuàng)建與Messages應(yīng)用程序交互的應(yīng)用程序擴(kuò)展冬殃,允許用戶發(fā)送文本,貼紙募寨,媒體文件和交互消息族展。 更新交互式消息,調(diào)整對話參與者與之交互時每條消息的狀態(tài)拔鹰。接下來幾篇我們就一起看一下這個框架仪缸。

Overview

下面看一下該框架的基本信息。

您可以使用Messages框架來創(chuàng)建兩種類型的附加應(yīng)用程序擴(kuò)展名:Sticker packsiMessage應(yīng)用程序列肢。 這兩種擴(kuò)展類型都可以作為獨(dú)立的應(yīng)用程序創(chuàng)建恰画,也可以作為包含iOS應(yīng)用程序的應(yīng)用程序擴(kuò)展宾茂。

有關(guān)創(chuàng)建和使用附加應(yīng)用信息的更多信息,請參閱 App Extension Programming Guide拴还。

下面看一下該框架的基本結(jié)構(gòu)跨晴。


Sticker Packs - 貼紙包

貼紙包只是提供一組靜態(tài)的貼紙,用戶可以通過內(nèi)聯(lián)的方式發(fā)送圖像作為消息或剝離片林,并附在消息氣泡中端盆。 貼紙包不需要任何代碼。 通過將圖像文件拖放到貼圖資產(chǎn)目錄中的貼紙包文件夾中來添加貼紙费封。 有效的圖像文件必須符合以下規(guī)格:

  • 圖片必須是PNG焕妙,APNG,GIF或JPEG文件弓摘。
  • 該文件必須小于500 KB访敌。
  • 為獲得最佳效果,圖像不應(yīng)小于100 x 100點或大于206 x 206點衣盾。

注意:始終提供@ 3x圖像(300 x 300像素到618 x 618像素)寺旺。 系統(tǒng)通過在運(yùn)行時縮減@ 3x圖像來生成@ 2x和@ 1x版本。

Messages支持三種貼圖大小势决,這些大小顯示在基于網(wǎng)格的瀏覽器中阻塑。 在Xcode屬性檢查器中,為您的貼紙包選擇以下尺寸之一:

  • 小果复。100 x 100點@ 3x(300 x 300像素)陈莽。
  • 中。 136×136點(3×408×408像素)虽抄。
  • 大走搁。 206 x 206點@ 3x(618 x 618像素)。

為了獲得最佳的質(zhì)量和性能迈窟,請?zhí)峁┧x尺寸的貼紙圖像私植。

要了解有關(guān)創(chuàng)建動畫貼紙的更多信息,請參閱Creating Stickers with Motion车酣。

要了解更多關(guān)于提交貼紙包到App Store的信息曲稼,請參閱 Preparing Sticker Submissions


iMessage Apps

iMessage應(yīng)用程序利用完整的框架與Messages應(yīng)用程序進(jìn)行交互湖员。

注意:在iOS 10.0或之后鏈接的iMessage應(yīng)用程序必須在其Info.plist文件中包含它需要訪問的設(shè)備功能的使用說明鍵贫悄,否則將會崩潰。 具體而言娘摔,它必須包含NSCameraUsageDescription才能訪問設(shè)備的攝像頭窄坦,并且必須包含NSMicrophoneUsageDescription才能訪問設(shè)備的麥克風(fēng)。

使用iMessage應(yīng)用程序來:

  • 在Messages應(yīng)用程序中提供一個自定義用戶界面; 請參閱MSMessagesAppViewController

  • 創(chuàng)建一個自定義或動態(tài)的貼紙瀏覽器; 請參閱 MSStickerBrowserViewController鸭津。

  • 將文本彤侍,貼紙或媒體文件插入到消息應(yīng)用程序的輸入字段中,請參閱MSConversation曙博。

  • 創(chuàng)建攜帶應(yīng)用程序特定數(shù)據(jù)的交互式消息×鳎看MSMessage父泳。

  • 更新交互式消息(例如,創(chuàng)建游戲或協(xié)作應(yīng)用程序)吴汪,請參閱MSSession惠窄。

要詳細(xì)了解如何將iMessage應(yīng)用程序提交到App Store,請參閱 Preparing Your iMessage App for Submission漾橙。


Topics

1. Classes

  • MSConversation

    • MSConversation類表示消息應(yīng)用程序中的對話杆融。 使用會話對象訪問有關(guān)當(dāng)前所選消息或會話參與者的信息,或發(fā)送文本霜运,貼紙脾歇,附件或消息對象。
  • MSMessage

    • 使用MSMessage類創(chuàng)建交互式消息對象淘捡。 要創(chuàng)建可由對話參與者更新的消息藕各,請使用 initWithSession:
      方法通過會話實例化消息。 否則焦除,使用init方法實例化消息激况。
  • MSMessageLayout

    • MSMessageLayout類是一個抽象基類,用于定義會話腳本中MSMessage對象的外觀膘魄。
  • MSMessageLiveLayout

    • 在版面內(nèi)提供一個自定義的交互式視圖乌逐。
  • MSMessagesAppViewController

    • MSMessagesAppViewController類充當(dāng)消息擴(kuò)展的主視圖控制器。 使用這個類來管理你的擴(kuò)展创葡。 更多信息可參考 App Extension Programming Guide
  • MSMessageTemplateLayout

    • MSMessageTemplateLayout描述了MSMessage對象如何顯示在腳本中浙踢。 消息模板包括消息擴(kuò)展的圖標(biāo),圖像灿渴,視頻或音頻文件成黄,以及一些文本元素(title, subtitle, caption, subcaption, trailing caption, 和 trailing subcaption)。 這些元素的布局如Figure 1所示逻杖。
  • MSSession

    • 使用MSSession類來創(chuàng)建和更新消息奋岁。
  • MSSticker

    • 在消息應(yīng)用程序中使用的貼紙。 貼紙可以作為新消息發(fā)送或附加到消息中的現(xiàn)有氣泡荸百。
  • MSStickerBrowserView

    • 使用MSStickerBrowserView類顯示一個動態(tài)生成的貼紙列表闻伶。 瀏覽器提供了拖放功能。 用戶可以按住貼紙將其從瀏覽上剝離下來够话,然后將貼紙拖到消息中的任何氣泡蓝翰。 用戶還可以點擊貼紙將其添加到消息應(yīng)用程序的輸入字段光绕。
  • MSStickerBrowserViewController

    • 使用MSStickerBrowserViewController呈現(xiàn)標(biāo)準(zhǔn)貼紙瀏覽器。 這個瀏覽器提供了拖放功能畜份。 用戶可以按住貼紙將其從瀏覽器上剝離下來诞帐,然后將標(biāo)簽拖到消息中任何氣泡。 用戶還可以點擊貼紙將其添加到消息應(yīng)用程序的輸入字段爆雹。
  • MSStickerView

    • 使用MSStickerView類來顯示貼紙對象停蕉。 貼紙視圖還提供了拖放功能。 用戶可以按住一個貼紙將其從視圖中剝離钙态,然后將貼紙拖到transcript中的任何氣泡慧起。

2. Protocols

3. Reference

后記

本篇已結(jié)束驻子,后面更精彩~~~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末灿意,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子崇呵,更是在濱河造成了極大的恐慌脾歧,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件演熟,死亡現(xiàn)場離奇詭異鞭执,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)芒粹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進(jìn)店門兄纺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人化漆,你說我怎么就攤上這事估脆。” “怎么了座云?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵疙赠,是天一觀的道長。 經(jīng)常有香客問我朦拖,道長圃阳,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任璧帝,我火速辦了婚禮捍岳,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己锣夹,他們只是感情好页徐,可當(dāng)我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布疲吸。 她就那樣靜靜地躺著蜓堕,像睡著了一般注盈。 火紅的嫁衣襯著肌膚如雪骚灸。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天絮记,我揣著相機(jī)與錄音伦忠,去河邊找鬼固以。 笑死滤蝠,一個胖子當(dāng)著我的面吹牛豌熄,可吹牛的內(nèi)容都是我干的授嘀。 我是一名探鬼主播物咳,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼蹄皱!你這毒婦竟也來了览闰?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤巷折,失蹤者是張志新(化名)和其女友劉穎压鉴,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體锻拘,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡油吭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了署拟。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片婉宰。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖推穷,靈堂內(nèi)的尸體忽然破棺而出心包,到底是詐尸還是另有隱情,我是刑警寧澤馒铃,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布蟹腾,位于F島的核電站,受9級特大地震影響区宇,放射性物質(zhì)發(fā)生泄漏娃殖。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一议谷、第九天 我趴在偏房一處隱蔽的房頂上張望珊随。 院中可真熱鬧,春花似錦、人聲如沸叶洞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽衩辟。三九已至螟炫,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間艺晴,已是汗流浹背昼钻。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留封寞,地道東北人然评。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像狈究,于是被迫代替她去往敵國和親碗淌。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容