Bagaimana Kami di Parallels Ditaklukkan Masuk dengan Apple



Saya pikir banyak sudah setelah WWDC 2019 mendengar Masuk dengan Apple (sebentar SIWA). Dalam artikel ini saya akan memberi tahu Anda apa jebakan spesifik yang harus saya hadapi ketika mengintegrasikan item ini ke portal berlisensi kami. Artikel ini tidak cukup bagi mereka yang baru saja memutuskan untuk berurusan dengan SIWA (bagi mereka saya memberikan sejumlah tautan pencarian fakta di bagian akhir teks). Dalam materi ini, kemungkinan besar, banyak orang akan menemukan jawaban atas pertanyaan yang mungkin muncul saat mengintegrasikan layanan Apple baru.

Apple tidak mengizinkan pengalihan kustom


Sebenarnya, saya masih belum melihat jawaban untuk pertanyaan ini di forum pengembangan. Intinya adalah: jika Anda ingin menggunakan API JS SIWA, yaitu Jika Anda tidak bekerja melalui SDK asli karena kurangnya karena satu dan lain alasan (bukan macOS / iOS atau versi lama dari sistem ini), maka Anda memerlukan portal publik Anda sendiri, jika tidak apa-apa. Karena pada portal WWDR Anda perlu mendaftar dan mengonfirmasi bahwa Anda adalah pemilik, domain Anda dan hanya di atasnya Anda dapat melampirkan pengalihan yang valid dari sudut pandang Apple:



Apa yang harus dilakukan jika ada keinginan untuk mencegat pengalihan dalam aplikasi? Kami memecahkan masalah ini dengan sangat sederhana: di portal kami, kami membuat daftar pengalihan yang valid untuk aplikasi kami, yang mereka pesan sebelum menampilkan halaman otorisasi SIWA. Dan lakukan saja redirect dari portal ke aplikasi dengan data yang diterima dari Apple. Sederhana dan ceria.

Masalah Email


Mari kita lihat bagaimana kita memecahkan masalah dengan email pengguna. Pertama, tidak ada REST API yang memungkinkan Anda untuk mendapatkan info ini dari backend - hanya klien yang menerima data ini dan dapat mengirimkannya bersama dengan kode otorisasi.

Kedua, informasi tentang nama pengguna dan email dikirimkan hanya sekali, ke pengguna pertama yang masuk ke aplikasi melalui Apple, di mana pengguna memilih opsi untuk berbagi data pribadinya.

Sendiri, masalah-masalah ini tidak langsung kritis jika koneksi ke profil sosial berhasil dibuat di portal - ID pengguna sama dan terkait dengan ID Tim - yaitu. ini adalah satu untuk semua aplikasi tim Anda yang terintegrasi dengan SIWA. Tetapi jika login dilakukan melalui Apple, dan kemudian terjadi kesalahan dan komunikasi di portal tidak dibuat, maka satu-satunya pilihan adalah mengirim pengguna ke appleid.apple.com, putuskan sambungan dari aplikasi dan coba lagi. Sebenarnya, masalah diselesaikan dengan menulis artikel KB yang sesuai dan tautan ke sana.

Masalah yang lebih tidak menyenangkan berikutnya adalah bahwa Apple datang dengan konsep baru dengan email proxy. Dalam kasus kami, jika pengguna sudah berada di portal berlisensi dengan sabun asli dan login pertama melalui Apple memilih opsi untuk menyembunyikan email, akun baru dengan proxy email ini terdaftar, di mana jelas tidak ada lisensi, yang menempatkan pengguna akhir di jalan buntu.

Solusi untuk masalah ini cukup sederhana: ID pengguna sama dalam SIWA dan tidak tergantung pada opsi / aplikasi yang dipilih, yang masuk, maka kami hanya menggunakan skrip khusus untuk memungkinkan kami untuk beralih bundel ini dari Apple ke akun lain dengan sabun pengguna nyata dan dengan demikian โ€œmengembalikan pembelian kami ". Setelah prosedur ini, pengguna mulai melalui SIWA untuk masuk ke akun lain di portal dan semuanya berfungsi dengan benar untuknya.

Ketika Masuk melalui portal web tidak ada ikon aplikasi


Untuk mengatasi masalah lain, kami meminta klarifikasi dari perwakilan Apple, berbagi pengetahuan kami:

https://forums.developer.apple.com/thread/123054


Yaitu artinya adalah sebagai berikut: di kepala kelompok SIWA m. hanya aplikasi macOS / iOS yang dikirimkan, di mana ID layanan portal yang diperlukan sudah ditambahkan. Dengan demikian, untuk menunjukkan ikon di aplikasi kepala d. Versi App Store media yang diuji oleh Apple. Ikon akan diambil dari sana.

Dengan demikian, jika Anda hanya memiliki portal dan tidak ada aplikasi dari App Store, maka tidak akan ada ikon yang indah, tetapi Anda bisa keluar dengan nama aplikasi - jika tidak ada media, aplikasi utama mengambil info ini dari Deskripsi layanan ID:



Jumlah elemen dalam kelompok SIWA terbatas pada 5


Masalah ini tidak memiliki solusi saat ini, kecuali untuk menggunakan banyak grup, jika Anda kehilangan 6 pengidentifikasi: 1 aplikasi utama dan 5 yang tergantung, maka ketika Anda mencoba mendaftar berikut ini, Anda akan melihat pesan ini:



Kami telah membuat grup untuk portal berlisensi kami dan untuk setiap aplikasi yang beroperasi dengan portal ini. Mengenai pembatasan slot, kami telah meluncurkan radar di Apple dan sedang menunggu tanggapan mereka.

Tautan yang bermanfaat


Tautan yang paling berguna, menurut pendapat saya, menurutnya saya melakukan semuanya pada intinya. Dermaga berguna Apple ada di sini .

Selamat menikmati! Pertanyaan, pemikiran, ide dan saran diterima di komentar.

Source: https://habr.com/ru/post/id469499/


All Articles