Παρακολούθηση πολλών πλατφορμών
Τα περισσότερα προϊόντα υπάρχουν σε περισσότερες από μία πλατφόρμες - ιστότοπο, iOS εφαρμογή, Android εφαρμογή. Στο Joryio, αυτό μοντελοποιείται με μία εφαρμογή ανά πλατφόρμα, οι οποίες τροφοδοτούν το ίδιο workspace: κάθε πλατφόρμα έχει το δικό της κλειδί SDK και διαπιστευτήρια push, ενώ κάθε συμβάν καταλήγει σε ένα κοινό προφίλ χρήστη.
Μία εφαρμογή ανά πλατφόρμα
Δημιουργήστε ξεχωριστή εφαρμογή (στις Ρυθμίσεις → Εφαρμογές) για κάθε πλατφόρμα στην οποία κυκλοφορεί το προϊόν σας. Μπορείτε να δημιουργήσετε εφαρμογές Web, iOS και Android· εφαρμογές e-commerce store (Shopify, WooCommerce, Magento) δημιουργούνται αυτόματα όταν συνδέετε αυτές τις ενσωματώσεις.
Κάθε εφαρμογή έχει δικό της κλειδί SDK στη μορφή jry_sdk_<platform>_<random> - η πλατφόρμα ενσωματώνεται στο κλειδί, ώστε να αναγνωρίζετε αμέσως σε ποιο build ανήκει:
jry_sdk_web_4f2a9c... Website
jry_sdk_ios_b81d3e... iOS app
jry_sdk_android_77c0aa... Android app
Το κλειδί κάνει τρία πράγματα: ελέγχει την ταυτότητα των αιτημάτων SDK, δρομολογεί συμβάντα στο σωστό workspace και επισημαίνει κάθε συμβάν με την ταυτότητα της εφαρμογής ($app_id, $app_name, $platform) ώστε να μπορείτε να δημιουργείτε τμήματα και να αναλύετε ανά πλατφόρμα.
Εφαρμογές React Native
Δεν υπάρχει ξεχωριστή πλατφόρμα «React Native». Το React Native SDK γεφυρώνει τα εγγενή iOS και Android SDK, οπότε ένα προϊόν React Native χρησιμοποιεί δύο εφαρμογές - μία iOS και μία Android - και περνά το κατάλληλο κλειδί κατά τον χρόνο εκτέλεσης:
import { Platform } from 'react-native';
import Joryio from '@joryio/react-native-sdk';
await Joryio.initialize(
Platform.OS === 'ios'
? 'jry_sdk_ios_YOUR_IOS_KEY'
: 'jry_sdk_android_YOUR_ANDROID_KEY',
'https://api-eu1.joryio.com',
);
Έτσι, τα διαπιστευτήρια push παραμένουν σωστά για κάθε store build (APNS για iOS, FCM για Android) και τα analytics ανά πλατφόρμα ακριβή.
Ένα προφίλ χρήστη σε όλες τις πλατφόρμες
Οι εφαρμογές διαχωρίζουν από πού προέρχονται τα συμβάντα· δεν διαχωρίζουν σε ποιον ανήκουν. Όλες οι εφαρμογές ενός workspace μοιράζονται την ίδια βάση χρηστών και τα προφίλ ενοποιούνται με το ID χρήστη:
- Καλέστε
identifyμε το ίδιο σταθερό ID χρήστη σε κάθε πλατφόρμα (το ID χρήστη της βάσης δεδομένων σας είναι συνήθως η σωστή επιλογή - ποτέ email που μπορεί να αλλάξει). - Πριν από τη σύνδεση, κάθε συσκευή παρακολουθεί με το δικό της ανώνυμο ID. Όταν ο χρήστης αναγνωρίζεται, το ανώνυμο ιστορικό της συσκευής συγχωνεύεται στο αναγνωρισμένο προφίλ - έτσι η απόδοση εγγραφής από web και τα συμβάντα πρώτης εκκίνησης από mobile καταλήγουν σε ένα μέρος.
- Αναγνωρίστε τον χρήστη όσο νωρίτερα γίνεται σε κάθε συνεδρία (κατά τη σύνδεση και στην εκκίνηση εφαρμογής όταν αποκαθίσταται συνεδρία), ώστε να καταγράφονται όσο το δυνατόν λιγότερα συμβάντα ανώνυμα.
- Web (JS)
- iOS (Swift)
- Android (Kotlin)
const joryio = new JoryioSDK({ sdkKey: 'jry_sdk_web_...' });
joryio.identify('user_123');
// Same ID as on web
Joryio.shared.identify("user_123")
// Same ID as on web
Joryio.identify("user_123")
Μόλις ενοποιηθεί, το προφίλ υποστηρίζει συμπεριφορά πολλών πλατφορμών παντού:
- Τα τμήματα μπορούν να εκτείνονται σε πλατφόρμες («χρησιμοποίησε iOS αλλά ποτέ web»), επειδή κάθε συμβάν περιέχει
$platformκαι$app_id. - Τα journeys αντιμετωπίζουν τον χρήστη ως ένα άτομο: ένα συμβάν
Order Completedαπό την iOS εφαρμογή μπορεί να ικανοποιεί τον στόχο ενός journey στο οποίο ο χρήστης μπήκε από τον ιστότοπο. - Γνωρίσματα που διαχειρίζεται ο διακομιστής, όπως
sessionCount, μετρούν δραστηριότητα σε όλες τις συσκευές και πλατφόρμες.
Γνωρίσματα από οποιαδήποτε πλατφόρμα (setAttributes) γράφουν στο ίδιο προφίλ - η τελευταία εγγραφή υπερισχύει, επομένως κρατήστε ονόματα και τύπους γνωρισμάτων συνεπείς σε όλες τις βάσεις κώδικα.
Διαπιστευτήρια push ανά πλατφόρμα
Τα διαπιστευτήρια push ανήκουν στην εφαρμογή, γι’ αυτό έχει σημασία μία εφαρμογή ανά πλατφόρμα:
- iOS εφαρμογή - ανεβάστε κλειδί ελέγχου ταυτότητας APNS (.p8, με Team ID και Key ID) ή πιστοποιητικό (.p12) στις ρυθμίσεις push της εφαρμογής.
- Android εφαρμογή - ανεβάστε το Firebase (FCM) service account JSON.
- Web εφαρμογή - ενεργοποιήστε web push στην εφαρμογή· το Joryio δημιουργεί ζεύγος κλειδιών VAPID και εκθέτει το δημόσιο κλειδί στο Web SDK.
Ρυθμίστε τα από τις Ρυθμίσεις → Εφαρμογές μέσω της ενέργειας ρύθμισης push σε κάθε γραμμή εφαρμογής. Τα μυστικά κρυπτογραφούνται σε κατάσταση ηρεμίας και εμφανίζονται καλυμμένα μετά την αποθήκευση.
Ποια εφαρμογή λαμβάνει push;
Ένα push στοχεύει μία εφαρμογή - τα διαπιστευτήρια μιας iOS ή Android εφαρμογής καθορίζουν ποιες συσκευές λαμβάνουν την ειδοποίηση.
- Μία εφαρμογή ή μία ανά πλατφόρμα (π.χ. μία iOS + μία Android): η σωστή εφαρμογή είναι σαφής, οπότε το Joryio την επιλύει αυτόματα. Δεν εμφανίζεται επιλογέας εφαρμογής.
- Δύο ή περισσότερες εφαρμογές στην ίδια πλατφόρμα (π.χ. δύο iOS builds): η επιλογή είναι ασαφής, οπότε εμφανίζεται επιλογέας Target app - στον campaign composer και στον κόμβο Push του journey - για να επιλέξετε από ποια εφαρμογή στέλνεται το push. Αφήστε το στο Automatic για να χρησιμοποιηθεί η πρώτη διαθέσιμη εφαρμογή.