Uygulamada Ios Passkit API'sini kullanarak, Uygulamada Geçme ve Bilet Yönetimi için
Table of Contents
PassKit API nedir?
Apple'ın PassKit çerçevesi, iOS geliştiricilerinin Apple Wallet için yaratılması, dağıtması ve dijital geçiş yapabilmelerini sağlayan kapsamlı bir araç ve hizmet setidir.A pass can be a boarding pass, event ticket, sadakat kartı, hediye kartı, kuponu veya başka bir tür crential that benefits from being stored safe on a user's device. The PassKit API handles everything from pass. For servers, ticketing platformları, and event organizatörleri, PassKit, the de facto standard for avoid experience.
Her geçiş bir bağlantı, e-posta veya uygulama indirgece paketlenir - cihazdaki geçişleri imzalanır ve hava üzerinde güncellenebilir ve barkodlar veya QR kodları gibi kritik bilgiler için çevrimdışı olarak çalışır.
PassKit API Nasıl Çalışır
Geç Dosya Yapı Yapı
AŞFLT:1) Dosya, en az aİLMİŞ:2) açık, aİLFLT:3) (SİL1 hashes ile tüm dosyaların listesi), ve bir imza dosyası () tüm geçiş içeriklerini tanımlayan standart bir ZIP arşividir: Başlık alanları, birincil alanlar, ikincil alanlar, yardımcı alanlar, barkodlar ve geçiş türü, tahta geçiş geçişli resimler için.
İşaret ve Dağıtım
Apple, bir geliştirici tarafından yazılmış bir sertifika (Apple Developer Portal aracılığıyla teslim edilen) ile kriptografik olarak imzalandığından geçer. İmza, imzanın gerçekliğini ve bütünlüğünüzü onaylar.Bir kez imzalandığında, geçiş bir sunucuda barındırılabilir ve alternatif olarak, e-posta ekleri olarak gönderilebilir, QR kodlarına bağlanabilir veya doğrudan uygulamanızdan doğrudan doğruya doğru itilir.
Gerçek Zamanlı Güncellemeler Push ile
PassKit'in en güçlü özelliklerinden biri, cüzdanın teslim edilmesinden sonra güncelleme yeteneğidir. Bir uçuş değişikliği kapısı veya bilet yükseltildiğinde, sunucu kullanıcının cihazına sessiz bir uyarı gönderebilir veya gecikmeler otomatik olarak bir uygulama açmadan kullanıcınızı talep eder.
Dağıtım akışı Apple'ın spesifikasyonuna uygun bir web hizmeti gerektirir: hizmet en son geçiş, seri numaraları ve uzaktan cihaz kaydı almak için uç noktaları ortaya çıkarmak zorundadır. Bu genellikle Node.js, PHP, Python veya herhangi bir yığın üzerinde uygulanmakta olan bir eklentidir.
Pas ve Bilet Yönetimi için Anahtar Faydaları
Kullanıcı Konvenience ve Azaltılmış Friction
Apple Cüzdan'da bir yönetim geçiş veya biletin durdurulması, bir kağıt versiyonu için bulanık olması veya üçüncü taraf uygulama açık tutulması gerekir. Passes kilit ekrandan erişilebilir ( geofencing, zaman bazlı bildirim veya manuel dokunuş) ve hızla kapılarda taranabilir, turntileler veya giriş noktalarında taranabilir.For organization, this speed boarding.For event locations, it reduce line at will reduce line at-call windows.
Güvenilir, Her Zaman kullanılabilir Veri
Bir geçiş indirildiğinde, barkod görüntüsü ve anahtar bilgiler yerel olarak depolanır. Cihazın hücresel bağlantı kaybettiğinde, geçiş yapılabilir. Bu, havaalanlarında, stadyumlarda ve geçiş merkezlerinde, ağ kapsamının yer olabileceği kritiktir.
Kullanıcı Eylemi olmadan Dinamik Güncellemeler
Bildirim tabanlı güncellemelerle, geçiş içeriğine herhangi bir değişiklik hemen yansıtılabilir.Bir uçuş gecikmesi için, geçiş zamanlarını geçiş güncellemeleri; bir festival için, bir aşama değişikliği bilet üzerinde görünür. Kullanıcılar, destek taleplerini azaltır ve genel deneyimi geliştirir.
Gelişmiş Güvenlik ve Anti-Fraud
Apple Wallet, bir geliştirici sertifikası ile imzalanır, bu nedenle tampering tespit edilebilir. Ek olarak, geçiş sunucuyu doğrulamanız için benzersiz bir seri numarası içerebilir. yüksek değerli olaylar için, PasKit'ı sunucunun çekleriyle birleştirebilirsiniz -örneğin, geri ödeme yapılırsa, bir geçiş uzaktan izin verin, sonra "eksik" bir sürümünüzü bir kez tekrarlayabilir. barkodlama işlemi tekrarlamanızı önlemek için periyodik olarak yeniden oluşturulabilir.
Pas Yaratılış ve Tasarım
Pas Fields Tanımlama
Pas içeriği mantıksal gruplar halinde kırılır: Başlık alanları (örneğin, “Boarding Pass”), birincil alanlar (örneğin, “Gate A12”), ikincil alanlar (örneğin, “Seat 23A”), yardımcı alanlar (örneğin, “Frequent Flyer Number”) ve arka alanlarda (örneğin, terimler ve koşullar) her alan, değer ve opsiyonel özellikler, tarih tarzı, numara tarzı, numara tarzı, parasal stil veya parasal stil gibi.
Barkolar ve QR Kodları
Her geçiş en az bir barkod nesnesini içermelidir.Sırıklama kodu kullanabilirsiniz.(Ücretsiz) veya onay için bir kez barkod oluşturabilirsiniz.(geçmiş) Ev sahibi olmak için son iki numarayı kayıt altına almak için kayıt defterine veya bir onay kodu kullanabilirsiniz – çoğu havayolu numarası veya bir onay kodu ile birlikte, sunucu tarafından onaylanmış bir kimlik kartı kullanabilirsiniz.
Görsel Tasarım Kılavuzları
Apple, cihazlara tutarlı görünmek için güçlü tasarım kılavuzları sağlar. Logo basit ve merkezi olmalıdır, arka plan otomatik olarak barkodu tamamlamak gerekir, ancak farklı ekranlarda dikkatli testler (seçmiş) çok sayıda çözünürlükte görüntü oluşturabilirsiniz (1x, 2x, 3x) tüm ekran kesintileri için.
Doğru yapılandırılmış bir geçiş JSON'un pratik bir örneği için Apple'ın resmi olarak bakınız:0) Bir Geçi (Dönetici)[Döneticileri)[Dönlendirmek.
Yerelleşme Yerelleşme
Paslar dil özel alt yönlendirmeler (örneğin, 03: 18) içinde, [[Üye Olmayanlar) paketin içinde bu yerelleştirilmiş dizeleri referanslayabilir.Bu özellikle uluslararası havayolu şirketleri ve küresel etkinlik organizatörleri için tercih edilen dili tercih eden dil.
Kullanıcılara Dağılma
In-App Direct Addition
Uygulamanız birincil dokunuş noktasıysa, kullanıcınıza standart bir akış kullanarak Cüzdana geçiş yapabilirsiniz: Kullanıcının bilet veya çekleri satın aldığı takdirde, uygulamanız “Add to Wallet” düğmesine basmalıdır. Tapping ilk olarak bir önizleme ile açılır ve kullanıcı onaylar.
E-posta ve Web Dağıtımı
Uygulamanızın yüklü olması olmayan kullanıcılar için (veya geçiş yönetimi için kullanmayı tercih eder), deneyimlerinizi geliştirmek için Evrensel Linkleri kullanabilirsiniz.Bu yöntem, bir web sitesinde doğrudan indirme linki yerleştirir. Kullanıcı bir iOS cihazına bağlantıya dokunduğunda, Safari otomatik olarak geçiş yapar ve hızlı bir şekilde açılır.
QR Kodu veya Barko Scanning
Başka bir ortak model, bir QR koduna işaret eden bir URL'ye sahip olmaktır.In the Camera app, iOS ekran başında bir Cüzdan bayrağı gösterir. Tapping it add the pass.This is ideal for walk-up ticketing at event box tasks or self-service kiosks at the.For more details on this approach, consultFLT:0)Adding a Pass to Wallet|Sp>
Gerçek Zamanda Geçme Geçiyor
PushBased Update Architecture
Otomatik güncellemeler sağlamak için Apple Wallet'ın çağırabileceği basit bir web hizmeti uygulamanız gerekir. Hizmet üç uç noktası ortaya çıkarmak zorundadır:
- [FONT:0) Bir geçişin son versiyonunu alın[Dönetici: 1 )
- [0]Bir cihaz için seri numaraları alın[Dönetici:0)[Döneticileri tespit etmek ve değişiklikleri tespit etmek için kullanılır).
- [FONT:0)Yönetici ve un ⁇ [Döncüm: 1)) (kapılı bildirimleri zorlamak için cihazlara depolanır).
Bir geçişin güncellenmesine ihtiyaç duyduğunda, sunucunuz kayıtlı cihazlara bir push bildirim gönderir. Cihazın ardından yeni bir 444FLT:26 için web hizmeti sorgular.Eğer geçiş sürümü değiştiyse, Cüzdan indirmeleri ve eski geçiş yerini sessiz bir şekilde değiştirir.
Güncellemeleri Ne Zaman Kullanılır
Ortak kullanım durumları şunları içerir:
- Uçuş kapısı değişiklikleri, gecikmeler veya iptaller
- Event rescheduling veya mekan değişiklikleri
- Koltuk yükseltmeleri veya aşağılıklar
- Bilet doğrulama (örneğin, girişte tarama, kullanılan geçiş)
- Güvenlik güncelleştirmeleri (örneğin, bir tarama girişimi sonrasında bir barkodu değiştirmek)
Her geçişin yalnızca başlangıçta imzalamak için kullanılan aynı sertifikayı kullanarak güncellenebileceğini unutmayın. Tekliften sonra geçiş türü veya organizasyon tanımlayıcısını değiştiremezsiniz.
Uygulama için En İyi Uygulamalar
Güvenlik ve Güven
- İmza sertifikanızı ve güvenli bir sunucu ortamında özel anahtarını tutun, asla müşteri kodlarında değil.
- Tüm gelen push kayıtlarını, token enjeksiyonu önlemek için geçerlidir.
- Sunucunuz ve Apple Wallet arasındaki tüm etkileşimler için HTTPS kullanın.
- Bir zamanlar barkod veya kısa ömürlü kimlikleri yüksek güvenlik olayları için kullanmayı düşünün.
- Web hizmeti uç noktalarınızda sınırlı olan uygulama oranı.
Kullanıcı Deneyimi
- En alakalı anda “Add to Wallet” seçeneği göster - onay aldıktan sonra, check-in veya bir etkinlik gününde.
- barkodlar için açık, yüksek kontrast stili kullanın ve minimum boyut gereksinimleri karşılamak (en azından baskı eşdeğerlerinde 2 inç genişlik).
- Basit geçiş yapın: gereksiz alanlardan rahatsız etmekten kaçının. Kilit ekran görüntüsü, en kritik üç bilgiyi göstermeli.
- Test farklı iOS versiyonları ile gerçek cihazlara geçer. Simulator geçiş yapabilir, ancak güncelleştirmeleri veya gerçek taramayı test edemezsiniz.
Backend Entegrasyonu
Geçiş nesil hizmetiniz, her kullanıcının etkinlik veya uçuş rezervasyonlarına kadar seri numarasına uyması için bir veritabanı kullanmalıdır. birçok takım, USBT gibi kütüphaneleri kullanıyorsa;0)Swift-Protobuf veya mevcut sunucunun yardımcıları (örneğin PHPT:2Passbook) satın almak için cihaz pencereleri kullanın.
Test ve QA
Apple, Xcode'daki bir Cüzdan Geçme aracı sunar ve böylece çevrimdışı barkod ekranını doğru bir şekilde doğrulamadan önce APN araçlarını kullanarak bildirimleri doğrulayabilir. Ek olarak, tam yaşam döngüsü test edin: → ücretsiz ağ koşullarıyla güncelleyin.
Gerçek Dünya Örnekleri ve Vakaları Kullanın
Havayolları ve Havaalanı
Tüm büyük havayolu şirketleri -Delta, Birleşik, Emirates ve diğer birçok kişi - gemicilik için geçiş yapmak için PassKit. Yolcular, havayolunun uygulaması aracılığıyla kontrol edebilir ve cüzdanı almak için geçiş yapın ve yolculuk boyunca kullanın. kapı değişiklikleri ve emniyet reassignments otomatik olarak şarj edilir.Bazı havayolu şirketleri de giriş veya öncelik yönetim kurulu statüsüne geçiş yapabilirler.
Event Ticketing
Biletmaster, Live Nation ve birçok festival uygulamaları Apple Wallet'i destekliyor. Fans bir bilet satın alıyor, geri dönüşlü bir QR kodu ile geçiyor (konuşturmayı önlemek için) ve giriş için kullanabilir. geçiş sırasında Add-on alışverişlerini da dahil edebilir.
Public Transit and Parking
Şehir transit ajansları (Londra'da MTA veya TfL gibi) aylık geçiş veya tek kişilik biletler için PassKit ile deneyerek yapılır. Bazı otopark uygulamaları, Cüzdanın aynı gerçek zamanlı itme yeteneğinden yararlanabileceği dijital otopark izinleri alır -örneğin, tren hattı kesintiye uğrarsa, geçiş alternatif rotalar önerebilir.
Sınırlar ve Tahminler
PassKit güçlü olsa da, kısıtlayıcıların planlamaları gerekir:
- [[DÜŞÜNÜ:0}Sadece:[DÜDÜT:1) Passes Android cihazlara eklenemez.Eğer seyirciniz çapraz platformsa, bir alternatif (örneğin, PDF veya web tabanlı bir mobil bilet) sunmalısınız.
- [FONT=0) Hiçbir Bluetooth veya NFC etkileşimi ( varsayılan olarak):) Passes, yerel bir uygulamanın NFC seansı yapmadığınız sürece NFC'yi desteklemiyor.For true tap-and-go, you would need to use Core NFC separate.
- [[Dönetici:0)Push update latency:) Uyarılar hızlıyken, cihaz bir güncelleme sırasında çevrimdışıysa, geçiş bağlantıya kadar duracaktır.
- [FONT:0]Memory ve depolama: [Dönetici: Her geçiş küçük (tipik olarak 30-80 KB) ama milyonlarca geçiş yaparsanız, iter hizmetiniz yüksek ücretle idare etmelidir.
- [FONT:0)Certificate yenileme:[Dönemli:[Dönemli:0)[Dönlendirme:[Dönemli yenileme:[Dönemli)[[[Dönemli) Kayıtlar her yıl veya iki kez sona ermiş olduğunuza göre, sunucunuzun süresinden önce sertifikayı güncellemesini sağlamak zorundasınız, aksi takdirde tüm eski sertifika ile imzalanmış olan tüm geçişler hala işe yaramaz (ve yine de işe yaramazlar).
Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç
iOS PassKit API, sürekli uygulama gerektiren kullanıcıların bilgilendirilebilmesi için sağlam, güvenli ve kullanıcı dostu bir yol sunar. Apple Cüzdan'ın tasarım ve güvenlik yönergelerine dikkat gerektirir, güvenilir bir sunucu oluşturma, imzalama, dağıtım ve gerçek zamanlı itme güncelleştirmeleri, geliştiriciler, kullanıcıların sürekli bir şekilde iletişim kurmadan haberdar olmasını sağlar.
Daha fazla okuma için Apple'ın 03.D:0)Pass belgesi[Dönetici:2) ve [[Pass Programlama Kılavuzu[DDDD:2)[Dönetici: 3) Bu kaynaklar, JSON anahtarlarını, görüntü özelliklerini ve çekme protokolüni ayrıntılı olarak ele alır.