Azt hiszem, sokan már hallották a Sign In with Apple (röviden SIWA) szót a WWDC 2019 után. Ebben a cikkben elmondom, milyen konkrét buktatókkal kellett szembenéznem, amikor ezt a dolgot a licencportálunkba integráltam. Ez a cikk nem igazán azoknak szól, akik most döntöttek úgy, hogy megértik a SIWA-t (számukra számos oktató hivatkozást adtam a szöveg végén). Ebben az anyagban valószínűleg sokan választ találnak azokra a kérdésekre, amelyek az új Apple szolgáltatás integrálásakor felmerülhetnek.
Az Apple nem engedélyezi az egyéni átirányításokat
Valójában még mindig nem látok választ erre a kérdésre a fejlesztői fórumokon. A lényeg a következő: ha a SIWA JS API-t akarod használni, pl. nem működik a natív SDK-n keresztül, mert ilyen vagy olyan okból hiányzik (nem macOS/iOS vagy ezeknek a rendszereknek egy régi verziója), akkor szükség van egy saját nyilvános portálra, különben nincs más lehetőség. Mivel a WWDR portálon regisztrálnia kell, és meg kell erősítenie, hogy Ön a domain tulajdonosa, és csak arra csatolhat az Apple szempontjából elfogadható átirányításokat:
Mi a teendő, ha el akarja fogni az átirányítást egy alkalmazásban? Ezt a problémát rendkívül egyszerűen megoldottuk: portálunkon elkészítettük az alkalmazásaink számára elfogadható átirányítások listáját, amelyeket a SIWA jogosultsági oldal megjelenítése előtt rendelnek meg. És egyszerűen átirányítjuk a portálról az alkalmazásra az Apple-től kapott adatokkal. Egyszerű és dühös.
Problémák az e-mailekkel
Nézzük meg, hogyan oldottuk meg a felhasználó e-mailjével kapcsolatos problémákat. Először is, nincs REST API, amely lehetővé teszi ezen információk lekérését a háttérből - csak az ügyfél kapja meg ezeket az adatokat, és továbbíthatja azokat az engedélyezési kóddal együtt.
Másodszor, a felhasználó nevével és e-mail-címével kapcsolatos információk csak egyszer kerülnek továbbításra, a felhasználó legelső bejelentkezéskor az alkalmazásba az Apple-n keresztül, ahol a felhasználó kiválasztja a személyes adatai megosztásának lehetőségeit.
Önmagukban ezek a problémák nem közvetlenül kritikusak, ha a közösségi profillal való kapcsolat sikeresen létrejött a portálon - a felhasználói azonosító megegyezik, és a Csapatazonosítóhoz kapcsolódik - pl. ez ugyanaz a csapat összes SIWA-integrált alkalmazása esetén. De ha a bejelentkezés az Apple-n keresztül történt, és az úton továbbhaladva hiba történt, és nem jött létre a kapcsolat a portálon, akkor az egyetlen lehetőség az, hogy elküldi a felhasználót az appleid.apple.com webhelyre, megszakítja a kapcsolatot az alkalmazással és próbáld újra. Valójában a probléma megoldható a megfelelő KB cikk megírásával és linkelésével.
A következő kellemetlenebb probléma azzal kapcsolatos, hogy az Apple új koncepcióval rukkolt elő a proxy e-maillel. Esetünkben, ha a felhasználó már járt a licencportálon valódi szappanjával, és az Apple-n keresztüli első bejelentkezéskor az e-mail elrejtésének lehetőségét választja, akkor ezzel a proxy e-mail-címmel új fiók kerül regisztrálásra. mail, amely nyilvánvalóan nem tartalmaz semmilyen licencet, ami zsákutcába hozza a végfelhasználót.
A probléma megoldása meglehetősen egyszerű: mert. Ha a felhasználói azonosító megegyezik a SIWA-ban, és nem függ a kiválasztott opcióktól/alkalmazásoktól, amelyekbe a bejelentkezés történik, akkor egyszerűen egy speciális szkriptet használunk, amely lehetővé teszi, hogy átkapcsolja ezt a kapcsolatot az Apple-ről egy másik fiókra a felhasználó valódi fiókjával. szappannal, és ezáltal „visszaállíthatja a vásárlásait” Ezt az eljárást követően a felhasználó elkezd hozzáférni egy másik fiókhoz a portálon a SIWA-n keresztül, és minden megfelelően működik számára.
A webes portálon keresztül történő bejelentkezéskor nincs alkalmazás ikon
Egy másik probléma megoldása érdekében az Apple képviselőihez fordultunk tisztázásért és tudásunk megosztásáért:
Azok. jelentése a következő: a SIWA csoport élén m.b. Csak a macOS/iOS alkalmazás kerül kiszállításra, amelybe már hozzá vannak adva a portálok szükséges szolgáltatásazonosítói. Ennek megfelelően annak érdekében, hogy a fő alkalmazás ikonja megjelenjen. az App Store-ban közzétett verziók az Apple által ellenőrzött adathordozókkal. Az ikon onnan kerül átvételre.
Ennek megfelelően, ha csak egy portálod van, és nincsenek alkalmazások az App Store-ból, akkor nem lesz gyönyörű ikonod, de megúszhatod az alkalmazás nevét - ha a fő alkalmazásnak nincs adathordozója, akkor ez az információ a leírás szolgáltatásazonosítójából átvéve:
Egy SIWA-csoport elemeinek száma 5-re korlátozódik
Jelenleg nincs megoldás erre a problémára, kivéve sok csoport használatát, ha hiányzik 6 azonosító: 1 fejalkalmazás és 5 függő, akkor amikor megpróbálja regisztrálni a következőt, ezt az üzenetet fogja látni:
Csoportokat hoztunk létre a licencportálunkhoz és minden olyan alkalmazáshoz, amelyek kölcsönhatásba lépnek ezzel a portállal. Ami a slot korlátozásokat illeti, már nyitottunk egy radart az Apple-lel, és várjuk válaszukat.
Hasznos Linkek
Leghasznosabb
Élvezd! Kérdéseket, gondolatokat, ötleteket és javaslatokat várunk kommentben.
Forrás: will.com