Πώς να μετεγκαταστήσετε καθαρά το επίπεδο μιας εταιρικής εφαρμογής Android στο Kotlin Multiplatform

Πώς να μετεγκαταστήσετε καθαρά το επίπεδο μιας εταιρικής εφαρμογής Android στο Kotlin Multiplatform

  • Υλοποίηση μιας κοινόχρηστης ενότητας χρησιμοποιώντας αυτοματοποιημένα πρότυπα στο Android Studio για Android και iOS.
  • Σύνδεση εξαρτήσεων στο Gradle για Android και διαμόρφωση δυαδικών πλαισίων χρησιμοποιώντας σενάρια στο Xcode για iOS.
  • Αναβαθμίστε στον μεταγλωττιστή Kotlin 2.0 και μεταβείτε στο Compose Multiplatform για βελτιστοποίηση της ανάπτυξης διεπαφών.

⚠️ Το ψηφιακό σας δακτυλικό αποτύπωμα (διεύθυνση IP) είναι εκτεθειμένο!

Η διεύθυνση IP σας είναι: ανίχνευση…

Κάντε streaming/download/«Σερφάρισμα» στο διαδίκτυο ανώνυμα με το Surfshark .

🌐 Μόνο $45.63 - 27 μήνες + Unlimited devices
Δεν αποθηκεύουμε τη διεύθυνση IP σας. Η ανίχνευση γίνεται τοπικά στον browser σας.

Το περιεχόμενο αυτού του σεναρίου δημιουργείται αυστηρά για εκπαιδευτικούς σκοπούς. Η χρήση γίνεται με δική σας ευθύνη.

Αν έχετε αφιερώσει χρόνια βελτιώνοντας μια εταιρική εφαρμογή για Android και τώρα σας ζητείται να φέρετε το έργο και σε χρήστες της Apple, πιθανότατα αναρωτιέστε αν πρέπει να πετάξετε όλη σας τη δουλειά από το παράθυρο. Τα καλά νέα είναι ότι το Kotlin Multiplatform (KMP) είναι εδώ για να σώσει την κατάσταση, επιτρέποντάς μας να επαναχρησιμοποιήσουμε την επιχειρηματική λογική χωρίς να χρειάζεται να γράψουμε τον ίδιο κώδικα δύο φορές σε διαφορετικές γλώσσες.

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

Πώς να ρυθμίσετε την κοινόχρηστη ενότητα από την αρχή

Για να ξεκινήσετε καλά, το πιο εύκολο πράγμα που έχετε να κάνετε είναι να επωφεληθείτε από τα επίσημα εργαλεία. Εάν χρησιμοποιείτε το Android Studio Meerkat και έχετε την έκδοση 8.8.0 ή νεότερη έκδοση του πρόσθετου Gradle, είστε τυχεροί χάρη στο πρότυπο Kotlin Multiplatform Shared Module . Αυτή η επιλογή αυτοματοποιεί όλες τις βασικές ρυθμίσεις, ώστε να μην χρειάζεται να ασχολείστε με τα αρχεία ρυθμίσεων.

Η διαδικασία είναι αρκετά διαισθητική: μεταβείτε στο Αρχείο > Νέο > Νέα Ενότητα και επιλέξτε το πρότυπο KMP. Εδώ θα πρέπει να ορίσετε το όνομα της ενότητας (το οποίο θα χρησιμεύσει επίσης ως όνομα του πλαισίου στο iOS) και το πακέτο αρχείων. Μόλις κάνετε κλικ στο Τέλος, αφήστε το Gradle να κάνει τα μαγικά του συγχρονίζοντας το έργο. Θα δείτε ότι δημιουργούνται φάκελοι συγκεκριμένοι για την πλατφόρμα, μαζί με έναν κοινό χώρο που ονομάζεται commonMain , όπου γίνεται η πραγματική δουλειά.

Ενσωμάτωση κοινόχρηστης λογικής στο Android

Η δημιουργία της ενότητας είναι μόνο η μισή μάχη. Τώρα πρέπει να πείτε στην εφαρμογή Android σας να χρησιμοποιήσει αυτόν τον κώδικα. Ο οδηγός δεν το κάνει αυτό αυτόματα, επομένως πρέπει να προσθέσετε την εξάρτηση χειροκίνητα στο αρχείο Gradle. Ο συνήθης τρόπος για να το κάνετε αυτό είναι να προσθέσετε την εντολή `implementation(project(“:shared”))` μέσα στο μπλοκ εξαρτήσεων.

Αν είστε ένας από αυτούς που έχουν ενεργοποιήσει τα Type-safe project accessories του Gradle , μπορείτε να απλοποιήσετε τα πράγματα χρησιμοποιώντας το `link` projects.shared. Μόλις συνδεθεί, η εφαρμογή σας Android θα μπορεί να καταναλώνει απρόσκοπτα όλα όσα έχετε προγραμματίσει στο `androidMain` ή στο `commonMain` , ενσωματώνοντας τα με απόλυτη φυσικότητα στη ροή εργασίας.

Διαμόρφωση και ανάπτυξη στο οικοσύστημα iOS

Εδώ είναι που τα πράγματα γίνονται ενδιαφέροντα, καθώς η Swift δεν κατανοεί εγγενώς το Kotlin. Για να τα κάνουμε να συνεργαστούν, πρέπει να δημιουργήσουμε ένα μεταγλωττισμένο δυαδικό πλαίσιο . Το πρότυπο Android Studio παρέχει ήδη το build.gradle.ktsαρχείο διαμόρφωσης για τις διαφορετικές αρχιτεκτονικές της Apple, όπως iosX64, iosArm64 και iosSimulatorArm64 .

Από προεπιλογή, το πλαίσιο ονομάζεται `kotlin` sharedKit, αν και μπορείτε να αλλάξετε αυτήν τη μεταβλητή `xcfName` αν προτιμάτε ένα όνομα που να ταιριάζει περισσότερο με την επωνυμία σας. Για να πείτε στο Xcode τι ​​να κάνει, πρέπει να προσθέσετε μια φάση εκτέλεσης σεναρίου που ονομάζεται `Compile Kotlin Framework` . Είναι ζωτικής σημασίας αυτό το σενάριο να εκτελεστεί πριν από τη μεταγλώττιση του πηγαίου κώδικα του Swift, έτσι ώστε ο κώδικας Kotlin να είναι ήδη διαθέσιμος όταν το Swift τον αναζητά.

Για να επαληθεύσετε ότι όλα λειτουργούν, απλώς μεταβείτε στο αρχείο ContentView.swift στο Xcode, εισαγάγετε τη βιβλιοθήκη sharedKitκαι καλέστε μια συνάρτηση από την κοινόχρηστη ενότητα, όπως την κλασική platform(), για να επιβεβαιώσετε ότι η εφαρμογή αναγνωρίζει ότι εκτελείται σε iOS .

Μετάβαση στο Kotlin 2.0 και στο Compose Multiplatform

Αν θέλετε να αναβαθμίσετε στην έκδοση 2.0 του Kotlin, υπάρχουν μερικές τροποποιήσεις που θα χρειαστεί να κάνετε. Αρχικά, ενημερώστε την έκδοση στο αρχείο libs.versions.toml και μην ξεχάσετε να προσθέσετε τον φάκελο στο .kotlinαρχείο .gitignore για να αποφύγετε την αποστολή περιττών αρχείων ανεπιθύμητης αλληλογραφίας στο αποθετήριο.

Μια βασική αλλαγή είναι ο μεταγλωττιστής Compose , ο οποίος είναι πλέον ένα ενσωματωμένο πρόσθετο Kotlin. Πρέπει να τον προσθέσετε org.jetbrains.kotlin.plugin.composeστον κατάλογο εκδόσεων και να τον εφαρμόσετε στα σχετικά αρχεία build.gradle. Αυτό σας επιτρέπει να καταργήσετε το μπλοκ composeOptions και να επωφεληθείτε από ένα πολύ πιο καθαρό DSL για τη διαμόρφωση πραγμάτων όπως το strongSkippingMode .

Επιπλέον, εάν χρησιμοποιείτε το KSP (Kotlin Symbol Processing) , φροντίστε να το ενημερώσετε σε μια έκδοση συμβατή με το Kotlin 2.0 για να αποφύγετε ενοχλητικά σφάλματα μεταγλώττισης. Εάν έχετε ήδη εμπειρία με το Jetpack Compose, μπορείτε να προσαρμόσετε αυτόν τον κώδικα για το Compose Multiplatform , επιτρέποντάς σας να μοιράζεστε όχι μόνο τη λογική αλλά και μέρος της διεπαφής χρήστη, αν και ορισμένες συγκεκριμένες λεπτομέρειες θα πρέπει να προσαρμοστούν για να διασφαλιστεί μια ομαλή εμπειρία σε iOS.

Η μετεγκατάσταση μιας εταιρικής υποδομής στο KMP περιλαμβάνει την οργάνωση του κώδικα σε μια κοινόχρηστη ενότητα, τη σωστή σύνδεσή του με το Android μέσω του Gradle και τη διαμόρφωση του Xcode χρησιμοποιώντας σενάρια δημιουργίας iOS. Η αναβάθμιση στο Kotlin 2.0 απλοποιεί τη διαχείριση του μεταγλωττιστή Compose και βελτιστοποιεί τη δομή του έργου, διασφαλίζοντας συνεπή λογική τομέα και μια διεπαφή ειδικά για την πλατφόρμα.

Αφήστε ένα Σχόλιο

Η ηλ. διεύθυνση σας δεν δημοσιεύεται. Τα υποχρεωτικά πεδία σημειώνονται με *

Δεν είναι διαφήμιση – ανήκει στο DirectVortex