Matrica csomagok létrehozása a WhatsApp számára iOS-ban

Néhány nappal ezelőtt, e üzenet írásakor a WhatsApp megengedte, hogy matricákat küldhessenek csevegőinkbe. Ahhoz, hogy meg tudja csinálni, csak frissítenie kell alkalmazását a legújabb verzióra. Sokkal érdekesebb számunkra az, hogy lehetőség van harmadik féltől származó matrica csomagok létrehozására. Ezt egy nagyon különleges módon hajtják végre, biztos vagyok benne, hogy ez csak a kezdet, és javulni fog, mivel egyre nagyobb lesz, ezért szerettem volna írni az iMonstickers módosításának tapasztalatairól, hogy támogassam annak használatát a WhatsAppban.

Gomb matricák küldéséhez a WhatsAppban

Csak tisztázásként hozhat létre matricacsomagokat mind az iOS, mind az Android számára, ami már óriási előrelépés az Üzenetekhez képest, ahol nem lehet elküldeni a gyönyörű matricákat barátainak, akik valamilyen okból Android telefonokat használnak . De az iOS rendszerre összpontosítunk. Az Android valójában nagyon hasonló.

iMonstickers for WhatsApp

Az első dolog, amire kíváncsi lehet: Hogyan működik? Van a WhatsApp matrica áruház, amelyet elküldhet? Felszámíthatja őket?

A megközelítés valójában elég érdekes, bár kissé súrlódást okoz a felhasználó számára. Jelenleg nincs áruházuk vagy módjuk harmadik féltől származó matricacsomagok keresésére. Ehelyett használhatja a jelenlegi iOS-alkalmazást, vagy építhet egy újat matricák csomag létrehozásához a WhatsApp számára. És nem számít, van-e ön matrica-kiterjesztés az Üzenetekhez, vagy sem.

Ez nagyon egyszerű, hozzáadtak egy mechanizmust, amellyel megadhat valamilyen információt a matricacsomagról, és módot adhat arra, hogy a kép tartalmával együtt a WhatsApp alkalmazásba elküldje a „WhatsApp: //” egyéni sémán keresztül.

Még egy csontvázalkalmazást is rendelkezésre bocsátottak, amelyet Ön szabadon használhat. Galéria létrehozásához a matricacsomagokhoz, és annak lehetővé tétele, hogy a felhasználó megoszthassa a matricákat képekkel más alkalmazásokkal, valamint elküldhesse azokat a WhatsApp alkalmazásban történő felhasználáshoz, csak húzza át és dobja le képeit, és módosítsa néhány információs bitet. egy JSON-ban.

Matricák csomag hozzáadása egy iOS alkalmazásból a Whatsapphoz (példa az iMonstickerekkel)

Itt szeretném megvizsgálni, hogyan lehet ezt a funkciót hozzáadni egy meglévő alkalmazáshoz.

Az első dolog az, hogy ezt a repót klónozza: https://github.com/WhatsApp/stickers

Egyébként itt megtalálhatja a legtöbb szükséges információt: https://github.com/WhatsApp/stickers/tree/master/iOS

Miután ezt megtette, van néhány fájl, amelyeket hozzá kell adnia a meglévő projekthez. Amint azt a README.md fájl meghatározza:

  • Néhány gyors fájl: StickerPack.swift, Sticker.swift, Limits.swift, ImageData.swift, Interoperability.swift és WebPManager.swift. És ne felejtsd el hozzáadni a StickerPackManager.swift fájlt is, hiányzik a dokumentációból a bejegyzés írásának pillanatában.
  • Néhány Objective-C fájlt hozzá kell adnia: alapvetően mindazokat, amelyek „YY” előtaggal rendelkeznek. Ennek során ne felejtsd el hozzáadni az áthidaló fejlécet és az importálást: #import “YYImage.h”
  • Végül, és ez még nem található a dokumentumokban, a WebP.framework-t hozzá kell adnia a Linked Framework-hez és a könyvtárakhoz a fő célponthoz, a projekt Általános részéhez.
Adja hozzá a WebP.framework csatolt kereteket és könyvtárakat

Az utolsó rész az, hogy lehetővé tegye alkalmazásának a WhatsApp egyedi séma használatát azáltal, hogy a következő sorokat adja hozzá az Info.plist fájlhoz:

Minden fel van állítva! És most nézzünk egy kicsit a kódba ...

Ez meglehetősen egyértelmű. Az első dolog, amit meg kell tennie, a metaadatok meghatározása a matricacsomag körül. Valami így néz ki:

A tálca képfájljának neve a matricacsomag „ikonja” lesz, és nem lehet nagyobb, mint 96x96px.

És akkor hozzá kell adnia a matricákat a fájlnév megadásával, és ez nagyon érdekes, legfeljebb három hangulatjel-tömb, amelyek jobban leírják a matricát.

Matricák osztályozása Emoji segítségével a WhatsAppban

Ne feledje, hogy vannak korlátozások. A legfontosabb tudni, hogy a maximális méret 512x512px.

Különböző módon biztosítják az adatok megadását a matricacsomag körül néhány JSON használatával. Ha én, mint én, már valami hasonlót csináltál, az én esetemben egy .plist alkalmaztam, könnyebbnek találtam az adatszerkezet hozzárendelését a WhatsApp elvárásaihoz, és ezt a jelen üzenetben ismertetettek szerint elvégezni.

És végül el kell küldenie a matricacsomagot a WhatsApp-hoz:

És ez alapvetően ennyi! Ez megnyitja a WhatsApp alkalmazást, és lehetővé teszi a felhasználó számára a matrica csomag mentését.

Ez olyan egyszerű, és valószínűleg semmi sem különbözik attól, amit már tesz a jelenlegi alkalmazásánál: továbbra is feltöltenie kell az App Store-ba, át kell mennie az Apple felülvizsgálati folyamatán, és csak a bevétel 70% -át kell megszereznie, ha számolj fel nekik. Most a fő kérdés számomra az, hogy az Apple hogyan érez ezt a rendszert, vagy ha jóváhagyják a kevés funkcióval rendelkező alkalmazásokat, amikor a WhatsApp által biztosított csontváz alkalmazást használják.

Mellesleg, az iMonstickers jelenleg csak egy üzenetkiterjesztés, és megpróbáltam hozzáadni ezt a funkciót anélkül, hogy ehhez gazdaalkalmazást kellett volna létrehoznom. Kiderül, hogy ez nem lehetséges, mivel az egyetlen olyan üzenet, amelyet az Üzenetek kiterjesztéséből nyithat meg, az fogja megnyitni a host alkalmazást .

Remélem, tetszett az üzenet, és nem várhatja meg a létrehozott matricacsomagok használatát. Nagyszerű lenne a megjegyzésekben is megismerni tapasztalatait! Köszönöm, hogy elolvasta!

És ha tetszik ezek a Raúl Gil gyönyörűen megtervezett matricái, kompatibilisek az Apple Messages-kel, és remélhetőleg a WhatsApp támogatásával is, hamarosan, akkor megtalálja azokat az App Store-ban: https://itunes.apple.com/app/imonstickers/id1164272926