Πώς η σπείρα θανάτου των εφαρμογών Apple Watch σχεδόν σκότωσε την εφαρμογή iPhone μου

Πριν από δύο χρόνια, ο σύντροφός μου και εγώ ξεκινήσαμε μια εφαρμογή Apple Watch για να συμπληρώσουμε την εφαρμογή γυμναστικής του iPhone. Δεν γνωρίζαμε ότι η αγκαλιά μας με το έξυπνο ρολόι της Apple θα απειλούσε την ίδια την ύπαρξη της εφαρμογής γυμναστικής που είχαμε αναπτύξει από το 2012.

Κάθε χρόνο από τότε που λανσάραμε τα Reps & Sets, το ενημερώνουμε για να είμαστε πάντα ενημερωμένοι με όλα τα νέα χαρακτηριστικά που παρουσίασε η Apple στο Worldwide Developers Conference της. Όλα άλλαξαν πέρυσι, όμως. Τότε ανακαλύψαμε ότι, προσθέτοντας υποστήριξη για το Apple Watch, είχαμε πάρει ακούσια ένα δηλητηριώδες χάπι που θα μπορούσε να σκοτώσει αποτελεσματικά την εφαρμογή iPhone μας.

Δεν χρειάζεται να είναι έτσι. Με μερικές βασικές αλλαγές, η Apple θα μπορούσε να αλλάξει τα πράγματα και να αναζωογονήσει το οικοσύστημα της εφαρμογής Apple Watch.

Γιατί οι περισσότεροι προγραμματιστές διακόπτουν τις εφαρμογές ρολογιού τους

Όταν αρχίσαμε να αναπτύσσουμε Επαναλήψεις & Σετ, ελπίζαμε ότι θα μας αποφέρει εκατομμύρια. Αυτό δεν έγινε ποτέ. Στην πραγματικότητα, όλα τα έσοδα που έβγαλε ποτέ ξοδέψαμε για προγραμματιστές.

Αλλά κολλήσαμε σε αυτό, γιατί ως έργο χόμπι είναι κάπως διασκεδαστικό. Επιπλέον, στην πορεία έχω μάθει πολλά, από ωραία πράγματα όπως ο σχεδιασμός UX έως τα φρικτά πράγματα όπως προφίλ παροχής.

Ωστόσο, μετά την έναρξη λειτουργίας της εφαρμογής Apple Watch, η Apple έκανε αλλαγές που μας άφησαν σε μια φρικτή θέση. Όλη η ανάπτυξη της εφαρμογής μας iPhone σταμάτησε αμέσως καθώς προσπαθούσαμε να αντιμετωπίσουμε τη νέα πραγματικότητα.

Iξερα ότι δεν ήμασταν μόνοι που είχαμε πρόβλημα με την εφαρμογή Apple Watch. Πολύ μεγαλύτεροι και καλύτεροι προγραμματιστές από εμάς είχαν ήδη ρίξει την πετσέτα. Χαρτοπετσέτα είναι μόνο το τελευταίο. Κελάδημα, Ίνσταγκραμ, Χάρτες Google, Amazon, eBay, Lyft, Χαλαρότητα και TripAdvisor είναι μερικά μόνο από τα μεγάλα ονόματα που εγκατέλειψαν την πλατφόρμα.

Αλλά ήξερα επίσης ότι τα προβλήματά μας ήταν κάπως διαφορετικά από αυτές τις εταιρείες ».

Στις περισσότερες από αυτές τις περιπτώσεις, το πρόβλημα είναι ότι ανέπτυξαν τις εφαρμογές Apple Watch για το watchOS 1. Τότε, οι εφαρμογές ρολογιού ήταν "μη ιθαγενής.. " Ενώ η διεπαφή χρήστη λειτουργούσε στο ρολόι σας, όλες οι υπόλοιπες λειτουργίες της εφαρμογής αποφορτώθηκαν στο iPhone σας.

Αυτή η προσέγγιση οδήγησε σε μια μάλλον αμήχανη εμπειρία χρήστη. Apple λοιπόν πρόσθετη υποστήριξη για εγγενείς εφαρμογές στο watchOS 2 το 2015 Φέτος, η Apple αποσύρει την υποστήριξη για μη εγγενείς εφαρμογές στο watchOS 5.

Αυτό σημαίνει ότι οι προγραμματιστές που αγκάλιασαν γρήγορα την πλατφόρμα τιμωρούνται τώρα για την υποστήριξή τους. Πρέπει είτε να αναδιαμορφώσουν πλήρως τις εφαρμογές ρολογιού τους είτε να τις καταργήσουν εντελώς. Φαίνεται ότι οι περισσότεροι από αυτούς τους πρώτους υιοθετητές επέλεξαν το δεύτερο.

Το πρόβλημά μας με το Apple Watch ήταν διαφορετικό - και πολύ χειρότερο

Ευτυχώς για εμάς, αργήσαμε να ξεκινήσουμε το Apple Watch, οπότε η εφαρμογή ρολογιού μας ήταν ήδη εγγενής. Αλλά το watchOS 4 εξακολουθούσε να μας προκαλεί πονοκέφαλο. Ένα τόσο μεγάλο, στην πραγματικότητα, που δεν απείλησε μόνο το μέλλον της εφαρμογής ρολογιού μας. Επίσης, η ανάπτυξη της εφαρμογής μας iPhone σταμάτησε επίσης.

Χωρίς να μπω στις βαρετές τεχνικές λεπτομέρειες - τις οποίες, για να είμαι ειλικρινής, μετά βίας καταλαβαίνω τον εαυτό μου - η Apple έκανε κάποιες αλλαγές στον τρόπο που χειρίζεται τις ειδοποιήσεις. Κατά συνέπεια, όταν μεταγλωττίστηκε η εφαρμογή Xcode 9 (Η πλατφόρμα της Apple για προγραμματιστές), οι ειδοποιήσεις δεν παραδόθηκαν στο ρολόι κατά την εκτέλεση της εφαρμογής μας.

Οι τεχνικοί της Apple αναμφίβολα είχαν κάποιους πολύ καλούς λόγους για την αλλαγή του συστήματος ειδοποιήσεων, οπότε θα μπορούσαμε να πούμε ότι ήταν δικό μας λάθος που εξακολουθούμε να βασίζουμε σε ένα ξεπερασμένο πλαίσιο. Αλλά ο Cupertino θα μπορούσε να είχε κάνει πολλά περισσότερα για να μας βοηθήσει. Οι αλλαγές στο Xcode 9 έκαναν το παλιό σύστημα ειδοποιήσεων να συμπεριφέρεται με εκπληκτικούς και μη τεκμηριωμένους τρόπους. Χρειάστηκε αρκετή δοκιμή και λάθος για να καταλάβουμε τι συνέβαινε.

Η διόρθωση αυτού του προβλήματος συνεπάγεται ορισμένες σοβαρές αλλαγές στον κώδικά μας. Και όχι μόνο για την εφαρμογή Apple Watch, αλλά και για την εφαρμογή iPhone επίσης. Και μέχρι να ολοκληρώσουμε αυτήν την εργασία σχετικά με τις ειδοποιήσεις, δεν μπορούσαμε να δημοσιεύσουμε άλλες ενημερώσεις στο App Store.

Αυτό ήταν απίστευτα απογοητευτικό. Weμασταν όλοι έτοιμοι να πάμε με μια ενημέρωση που πρόσθεσε υποστήριξη για το iPhone X το περασμένο φθινόπωρο. Αλλά δεν μπορούσαμε να το δημοσιεύσουμε, γιατί αν το κάναμε, θα σπάσει την εφαρμογή Apple Watch.

Η φυσική κατάσταση είναι μία από τις λίγες κατηγορίες όπου οι εφαρμογές ρολογιών τρίτων είναι πραγματικά χρήσιμες
Η φυσική κατάσταση είναι μία από τις λίγες κατηγορίες όπου οι εφαρμογές ρολογιών τρίτων είναι πραγματικά χρήσιμες.
Φωτογραφία: Graham Bower/Cult of Mac

Γιατί δεν μπορέσαμε να καταργήσουμε την εφαρμογή Apple Watch

Temταν δελεαστικό να απενεργοποιήσω εντελώς την εφαρμογή Watch και να προχωρήσω, όπως τόσοι άλλοι προγραμματιστές έχουν κάνει. Αλλά στην περίπτωσή μας, δεν ήταν τόσο απλό.

Πολλές εφαρμογές Apple Watch είναι χάλια. Οι άνθρωποι απλά δεν τα χρησιμοποιούν. Πάρτε για παράδειγμα τους Χάρτες Google. Όταν η Google διέκοψε αθόρυβα την εφαρμογή Watch, χρειάστηκαν εβδομάδες για να το αντιληφθεί κανένας.

Αλλά αυτό δεν συμβαίνει με την εφαρμογή μας. Η φυσική κατάσταση είναι μία από τις λίγες κατηγορίες όπου οι εφαρμογές ρολογιών τρίτων αποδεικνύονται πραγματικά χρήσιμες, χάρη στο εύχρηστο περιβάλλον χρήστη, την παρακολούθηση καρδιακών παλμών και την ενσωμάτωση δραστηριότητας. Ως αποτέλεσμα, η εφαρμογή Apple Watch έγινε γρήγορα απαραίτητη για τους περισσότερους χρήστες μας. Η κατάργησή του αποκλείεται.

Είχαμε κολλήσει.

Η εύρεση ενός καλού προγραμματιστή Swift δεν είναι εύκολη

Ο συνεργάτης μου έκανε το αρχικό έργο ανάπτυξης στο Reps & Sets, αλλά ήταν πολύ απασχολημένος με την καθημερινή του δουλειά για να το δουλέψει. Οι εφαρμογές Apple Watch πρέπει να αναπτυχθούν σε Ταχύς (Η μητρική γλώσσα προγραμματισμού της Apple), οπότε έπρεπε να βρούμε έναν άλλο καλό προγραμματιστή Swift, γρήγορα. Αλλά αυτό αποδείχθηκε πρακτικά αδύνατο.

Γιατί;

Ένα από τα ζητήματα είναι ότι αυτές τις μέρες, πολλές εφαρμογές iPhone δεν είναι πράγματι αναπτύχθηκε στο Swift. Μεγάλες εταιρείες όπως το Facebook, το Instagram και η Uber βασίζονται σε πλαίσια πολλαπλών πλατφορμών, όπως π.χ. React Native αντι αυτου. Δεν ήταν ποτέ εύκολο να βρεις καλούς προγραμματιστές Swift, αλλά αυτές τις μέρες είναι ακόμα πιο δύσκολο, επειδή πολλοί εξειδικεύονται σε αυτά τα πλαίσια πολλαπλών πλατφορμών και όχι στο ίδιο το Swift.

Ένα άλλο πρόβλημα ήταν ότι η εφαρμογή μας είναι σχετικά παλιά και προσθέσαμε πολλά σε αυτήν με τα χρόνια. Ως αποτέλεσμα, περιέχει άφθονο κώδικα παλαιού τύπου και ιδιαιτερότητες. Η εργασία σε ένα τέτοιο έργο περιλαμβάνει πολλά από αυτά που αποκαλούν οι προγραμματιστές "πεδίο γνώσης.. " Απλώς δεν είναι ρεαλιστικό να περιμένουμε από έναν νέο προγραμματιστή να ξεκινήσει χωρίς μακρά και πολύ εμπλεκόμενη επαγωγή.

Βρήκαμε έναν δρόμο προς τα εμπρός - προς το παρόν, τουλάχιστον

Ευτυχώς, μετά από μήνες κυνηγιού και πρακτικά εγκατάλειψης, ένας ελεύθερος επαγγελματίας που συνεργάστηκε μαζί μας στην εφαρμογή για πολλά χρόνια συμφώνησε να ρίξει μια ματιά στον ελεύθερο χρόνο του.

Το τελικό αποτέλεσμα είναι ότι, 12 μήνες αργότερα από ό, τι είχαμε προγραμματίσει, ενημερώσαμε τελικά την εφαρμογή μας για να υποστηρίξουμε το watchOS 4 και το iPhone X. (Κατά ειρωνικό τρόπο, ακριβώς στην ώρα του watchOS 5 και iPhone XS, οι οποίες εμποδίζουν τον αγωγό προϊόντων της Apple).

Προς το παρόν, το μέλλον της εφαρμογής μας φαίνεται ασφαλές. Αλλά η ανάπτυξη για το Apple Watch σημαίνει ότι ποτέ δεν ξέρετε πραγματικά τι νέο curveball θα σας φέρει ο Cupertino.

Εάν μεγάλες εταιρείες όπως η Google και το Facebook έχουν παραιτηθεί, δεν είναι περίεργο που οι μικροσκοπικοί indie devs όπως εμείς αγωνίζονται.

Οι εφαρμογές Apple Watch βρίσκονται σε σπείρα θανάτου

Σε όλα αυτά, μπορείτε απλώς να πείτε, "Meh, όποιος, ποιος χρησιμοποιεί τις εφαρμογές Apple Watch αυτές τις μέρες ούτως ή άλλως;" Όλο και περισσότερο, οι άνθρωποι χαίρονται να χρησιμοποιούν τα έξυπνα ρολόγια τους για ειδοποιήσεις, γυμναστική και Apple Pay. Οι περισσότεροι προφανώς δεν βλέπουν μεγάλη ανάγκη για εφαρμογές τρίτων.

Αλλά διαφωνώ. Ο θάνατος των εφαρμογών Apple Watch έχει γίνει μια αυτοεκπληρούμενη προφητεία. Το πιο σημαντικό, τα πράγματα δεν χρειάζεται να εξελίσσονται με αυτόν τον τρόπο.

Αυτό που βλέπω να συμβαίνει με τις εφαρμογές Watch τώρα είναι αυτό που ο γκουρού των επιχειρήσεων Seth Godin περιέγραφε κάποτε ως «σπείρα θανάτου.”

Οι προγραμματιστές δυσκολεύονται να διατηρήσουν τις εφαρμογές Apple Watch τους, οπότε σταματούν να τις αναπτύσσουν. Οι χρήστες βλέπουν μια περιορισμένη επιλογή από χοντροκομμένες, παρωχημένες εφαρμογές ρολογιού και δεν μπαίνουν στον κόπο να τις κατεβάσουν. Η Apple βλέπει μειωμένο ενδιαφέρον για εφαρμογές ρολογιών τρίτων, οπότε δεν μπαίνει στον κόπο να βελτιώσει τα εργαλεία για την κατασκευή τους. Και έτσι ο κύκλος συνεχίζεται.

Δεν μπορείτε να συρρικνώσετε το δρόμο προς το μεγαλείο. Το να επιτρέπεται στο Watch App Store να μαραίνεται και να πεθαίνει ενώ εστιάζετε σε μερικές βασικές λειτουργίες μπορεί να έχει νόημα βραχυπρόθεσμα. Αλλά κατά τη γνώμη μου, αυτή η προσέγγιση υπονομεύει τις μελλοντικές δυνατότητες της πλατφόρμας.

Γιατί εξακολουθούν να έχουν σημασία οι εφαρμογές Apple Watch τρίτων

Νομίζω ότι ο μόνος λόγος που οι εφαρμογές Apple Watch απορροφούν αυτήν τη στιγμή είναι επειδή αυτή τη στιγμή είναι χάλια να είσαι προγραμματιστής εφαρμογών ρολογιού.

Η Apple θα μπορούσε να κάνει πολλά πράγματα για να ενθαρρύνει τους προγραμματιστές να υποστηρίξουν το watchOS στο μέλλον. Το πιο σημαντικό βήμα, κατά τη γνώμη μου, είναι η βελτίωση των εργαλείων προγραμματιστή του Apple Watch. Στη συνέχεια, η Apple θα πρέπει να σταματήσει να κάνει μεγάλες αλλαγές στα πλαίσια κάθε χρόνο. Μόνο τότε οι προγραμματιστές θα επιστρέψουν στην πλατφόρμα.

Συνειδητοποιώ ότι οι εφαρμογές δεν θα είναι ποτέ τόσο σημαντικές για το Apple Watch όσο για το iPhone. Αλλά αν ο Cupertino μας έδινε λίγο περισσότερη αγάπη στους προγραμματιστές, νομίζω ότι οι εφαρμογές του Apple Watch θα μπορούσαν να γίνουν από μόνοι τους ένα πλούσιο και ποικίλο οικοσύστημα.

Εάν η Apple τροποποιήσει την προσέγγισή της, μια αναζωογονημένη σειρά εφαρμογών Watch τρίτων θα εισάγει νέα αξία και καινοτομία στην πλατφόρμα watchOS. Και η ανάπτυξη εφαρμογών Apple Watch δεν θα μοιάζει με παιχνίδι ζωής ή θανάτου για indie devs.

Τελευταία δημοσίευση ιστολογίου

Χτυπήστε την εφαρμογή Πορτοφόλι iOS 9 από την οθόνη κλειδώματος
September 11, 2021

Χτυπήστε την εφαρμογή Πορτοφόλι iOS 9 από την οθόνη κλειδώματοςΈνας ακόμη λόγος για να χρησιμοποιήσετε το Apple Pay.Φωτογραφία: Jim Merithew/Cult o...

| Cult of Mac
September 11, 2021

Ο πλήρης οδηγός δώρων διακοπών CultofMac 2010 (ξανά)Μόνο 11 ημέρες απομένουν μέχρι τη Μεγάλη Ημέρα (αν γιορτάζετε τα Χριστούγεννα. εάν είστε Εβραίο...

| Cult of Mac
September 11, 2021

Apple: Η Samsung δεν αντιγράφει το iPad επειδή δεν είναι τόσο δροσερό (αλλά αντιγράφει πραγματικά το iPad)Δεν περιμένατε από την Apple να ζητήσει μ...