Προσθέστε οποιαδήποτε βιβλιοθήκη GitHub στο Android Studio, χρησιμοποιώντας τα Maven, JCenter και JitPack

Συγγραφέας: Lewis Jackson
Ημερομηνία Δημιουργίας: 13 Ενδέχεται 2021
Ημερομηνία Ενημέρωσης: 1 Ιούλιος 2024
Anonim
Προσθέστε οποιαδήποτε βιβλιοθήκη GitHub στο Android Studio, χρησιμοποιώντας τα Maven, JCenter και JitPack - Εφαρμογές
Προσθέστε οποιαδήποτε βιβλιοθήκη GitHub στο Android Studio, χρησιμοποιώντας τα Maven, JCenter και JitPack - Εφαρμογές

Περιεχόμενο


Πολύ λίγα έργα Android είναι ένα νησί! Η πλειοψηφία των έργων Android έχει εξαρτήσεις σε πολλά άλλα στοιχεία, συμπεριλαμβανομένων των βιβλιοθηκών Android τρίτων μερών.

Μια βιβλιοθήκη Android περιέχει τα ίδια αρχεία που βρίσκετε σε ένα κανονικό έργο Android, όπως ο πηγαίος κώδικας, οι πόροι και ένα Manifest. Ωστόσο, αντί να μεταγλωττίσετε σε ένα κιτ Android Package Kit (APK) που μπορεί να τρέξει σε μια συσκευή Android, μια βιβλιοθήκη μεταγλωττίζεται σε ένα αρχείο κώδικα που μπορείτε να χρησιμοποιήσετε ως εξάρτηση έργου. Αυτές οι βιβλιοθήκες σας δίνουν πρόσβαση σε ένα ευρύ φάσμα πρόσθετων λειτουργιών, συμπεριλαμβανομένων ορισμένων λειτουργιών που δεν περιλαμβάνονται στην πλατφόρμα Android vanilla.

Ένα από τα καλύτερα μέρη για να βρείτε τις βιβλιοθήκες Android είναι το GitHub. Ωστόσο, η λήψη βιβλιοθήκης από τη σελίδα GitHub και το έργο σας δεν είναι πάντα απλή, ειδικά αφού υπάρχουν αρκετές διαφορετικές αποθήκες που μπορούν να χρησιμοποιήσουν οι προγραμματιστές για να διανείμουν τα έργα GitHub - και μπορεί να μην είναι πάντα προφανές σε ποιον αποθετήριο χρησιμοποιείται ένας προγραμματιστής!


Σε αυτό το άρθρο, θα σας δείξω πώς μπορείτε να εισαγάγετε οποιαδήποτε βιβλιοθήκη που ανακαλύπτετε στο GitHub στο έργο σας Android, ανεξάρτητα από το αν θέλετε να προσθέσετε τη βιβλιοθήκη ως απομακρυσμένη εξάρτηση ή ως τοπική εξάρτηση.

Προσθέτοντας απομακρυσμένες εξαρτήσεις

Το σύστημα κατασκευής Gradle του Android Studio προσθέτει βιβλιοθήκες στο έργο σας ως ενότητα εξαρτήσεις. Αυτές οι εξαρτήσεις μπορούν είτε να βρίσκονται σε απομακρυσμένο χώρο αποθήκευσης, όπως το Maven ή το JCenter, είτε να αποθηκεύονται στο έργο σας ως τοπική εξάρτηση - απλά πρέπει να ενημερώσετε το Gradle για το πού μπορεί να βρει αυτές τις εξαρτήσεις.

Η προσθήκη μιας βιβλιοθήκης ως εξ αποστάσεως εξάρτησης είναι συνήθως ο γρηγορότερος και ευκολότερος τρόπος να αποκτηθεί ο κώδικας της βιβλιοθήκης στο έργο σας, γι 'αυτό είναι η μέθοδος που θα εξετάσουμε πρώτα. Όταν προσθέτετε μια βιβλιοθήκη ως απομακρυσμένη εξάρτηση, το Gradle θα βεβαιωθεί ότι η εξάρτηση έχει όλα όσα χρειάζεται για να εκτελέσει, συμπεριλαμβανομένων οποιωνδήποτε μεταβατικός εξαρτήσεις, επομένως συνήθως θέλετε να προσθέσετε μια βιβλιοθήκη ως απομακρυσμένη εξάρτηση, όπου είναι δυνατόν.


Για να προσθέσετε μια απομακρυσμένη εξάρτηση, θα χρειαστεί να δώσετε στο Gradle δύο στοιχεία:

  • Το αποθετήριο. Το Gradle πρέπει να γνωρίζει τον αποθετήριο (ή τα αποθετήρια) όπου θα πρέπει να αναζητήσει τη βιβλιοθήκη σας (ή βιβλιοθήκες). Οι βιβλιοθήκες Android τείνουν να διανέμονται μέσω του Maven Central ή του JCenter.
  • Η δήλωση συμπλήρωσης. Αυτό περιέχει το όνομα του πακέτου της βιβλιοθήκης, το όνομα της ομάδας της βιβλιοθήκης και την έκδοση της βιβλιοθήκης που θέλετε να χρησιμοποιήσετε.

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

Προσθέτοντας μια εξ αποστάσεως εξάρτηση με το JCenter

Το StyleableToast είναι μια βιβλιοθήκη που σας επιτρέπει να προσαρμόσετε κάθε κομμάτι των τοστ Android, συμπεριλαμβανομένης της αλλαγής του χρώματος του φόντου, της ακτίνας ακτίνας και της γραμματοσειράς και της προσθήκης εικονιδίων. Παρέχει επίσης όλες τις πληροφορίες που χρειάζεστε για να προσθέσετε αυτήν τη βιβλιοθήκη στο έργο σας, στην ειδική ενότητα "Εγκατάσταση". Εδώ, μπορούμε να δούμε ότι αυτό το έργο διανέμεται μέσω του JCenter.

Όταν δημιουργείτε ένα έργο με τις πιο πρόσφατες εκδόσεις του Android Studio, τα αρχεία build.grade του έργου σας έχουν ήδη ρυθμιστεί για να υποστηρίξουν το JCenter. Εάν ανοίξετε το αρχείο build.gradle σε επίπεδο έργου, τότε θα δείτε ότι το JCenter περιλαμβάνεται ήδη στην ενότητα 'όλα τα έργα / αποθετήρια':

allprojects {αποθετήρια {jcenter ()}}

Σημειώστε ότι το αρχείο build.gradle σε επίπεδο έργου περιέχει δύο μπλοκ 'αποθετηρίων', αλλά το μπλοκ 'buildscript / repositories' είναι όπου καθορίζετε τον τρόπο με τον οποίο το Gradle εκτελεί αυτή την κατασκευή. Δεν θα πρέπει να προσθέσετε εξαρτήσεις εξαρτημάτων σε αυτήν την ενότητα.

Δεδομένου ότι το έργο σας έχει ήδη ρυθμιστεί για να ελέγξει το JCenter, το μόνο που πρέπει να κάνουμε είναι να προσθέσουμε τη δήλωση compile στο αρχείο build.gradle σε επίπεδο module.

Για άλλη μια φορά, το StyleableToast μας παρέχει ακριβώς τις πληροφορίες που χρειαζόμαστε, οπότε απλά αντιγράψτε τη δήλωση μεταγλώττισης από τη σελίδα GitHub του StyleableToast και επικολλήστε την στο αρχείο Gradle:

εξαρτήσεις {compile com.muddzdev: styleabletoast: 1.0.8}

Συγχρονίστε τα αρχεία Gradle είτε κάνοντας κλικ στο banner "Sync", είτε επιλέγοντας το εικονίδιο 'Sync Project with Gradle Files' στη γραμμή εργαλείων. Στη συνέχεια, το Gradle θα ερωτήσει τον διακομιστή JCenter για να ελέγξει ότι υπάρχει η βιβλιοθήκη Styleabletoast και να κατεβάσει όλα τα αρχεία του. Είστε πλέον έτοιμοι να αρχίσετε να χρησιμοποιείτε αυτήν τη βιβλιοθήκη!

2. Προσθήκη εξ αποστάσεως εξάρτησης με το Maven Central

Εναλλακτικά, εάν η σελίδα GitHub του έργου δηλώνει ότι αυτή η βιβλιοθήκη διανέμεται μέσω της Maven Central, τότε θα πρέπει να ενημερώσετε το Gradle για να ελέγξετε την Maven Central.

Ανοίξτε το αρχείο build.gradle σε επίπεδο έργου και προσθέστε το Maven Central στο μπλοκ "allprojects":

allprojects {αποθετήρια {mavenCentral ()}}

Από εδώ, η υπόλοιπη διαδικασία είναι ακριβώς η ίδια: ανοίξτε το αρχείο build.gradle σε επίπεδο ενότητας, προσθέστε την εντολή compile και συγχρονίστε με το Gradle.

3. Προσθήκη μιας εξ αποστάσεως εξάρτησης που φιλοξενείται στον δικό της διακομιστή

Περιστασιακά, ενδέχεται να αντιμετωπίσετε ένα έργο που εξακολουθεί να διανέμεται μέσω του JCenter ή του Maven Central, αλλά ο προγραμματιστής έχει επιλέξει να φιλοξενήσει το έργο του στο δικό του διακομιστή. Όταν συμβαίνει αυτό, η σελίδα GitHub του έργου θα πρέπει να σας ενημερώσει για τη χρήση μιας πολύ συγκεκριμένης διεύθυνσης URL, για παράδειγμα η αποθήκη του Crashlytics Kit του Fabric βρίσκεται στη διεύθυνση https://maven.fabric.io/public.

Εάν δείτε αυτό το είδος διεύθυνσης URL, τότε θα χρειαστεί να ανοίξετε το αρχείο build.gradle σε επίπεδο έργου και, στη συνέχεια, να δηλώσετε την αποθήκη (στην περίπτωση αυτή, το Maven) μαζί με την ακριβή διεύθυνση URL:

αποθήκες {maven {url https://maven.fabric.io/public}}

Στη συνέχεια, μπορείτε να προσθέσετε τη δήλωση μεταγλώττισης και να συγχρονίσετε τα αρχεία σας κανονικά.

Τι γίνεται αν δεν μπορώ να βρω την αποθήκη και / ή τη δήλωση συμμόρφωσης;

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

Σε αυτό το σενάριο, μπορείτε είτε:

  • Χρησιμοποιήστε το JitPack.
  • Κλωνοποιήστε ολόκληρο το χώρο αποθήκευσης και εισάγετε τον κώδικα του στο έργο σας ως τη δική του μονάδα.

Χρησιμοποιώντας το JitPack

Το JitPack είναι ένα αποθετήριο πακέτων για το Git που σας επιτρέπει να προσθέσετε οποιοδήποτε έργο GitHub ως απομακρυσμένη εξάρτηση. Όσο η βιβλιοθήκη περιέχει ένα αρχείο δημιουργίας, το JitPack μπορεί να δημιουργήσει όλες τις πληροφορίες που χρειάζεστε για να προσθέσετε αυτήν τη βιβλιοθήκη στο έργο σας.

Το πρώτο βήμα είναι να ανοίξετε το αρχείο build.gradle σε επίπεδο έργου και να προσθέσετε το JitPack ως αποθετήριο:

allprojects {αποθετήρια {maven {url https://jitpack.io}}}

Στη συνέχεια, μπορείτε να χρησιμοποιήσετε τον ιστότοπο JitPack για να δημιουργήσετε μια δήλωση μεταγλώττισης, με βάση τη διεύθυνση GitHub του συγκεκριμένου έργου:

  • Στο πρόγραμμα περιήγησης στο Web, μεταβείτε στη σελίδα GitHub της βιβλιοθήκης. Αντιγράψτε τη διεύθυνση URL.
  • Προχωρήστε στην ιστοσελίδα JitPack.
  • Επικολλήστε τη διεύθυνση URL στο πεδίο αναζήτησης του ιστότοπου και στη συνέχεια κάντε κλικ στο κουμπί "Look Up" που συνοδεύει.
  • Η ιστοσελίδα θα εμφανίσει έπειτα έναν πίνακα όλων των εκδόσεων αυτής της βιβλιοθήκης, χωρισμένους σε διάφορες καρτέλες: Εκδόσεις, Κατασκευές, Υποκαταστήματα και Commits. Συνήθως, οι εκδόσεις τείνουν να είναι πιο σταθερές, ενώ η ενότητα Commit περιέχει τις τελευταίες αλλαγές.

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

  • Αντιγράψτε / επικολλήστε αυτήν την εντολή μεταγλώττισης στο αρχείο build.gradle στο επίπεδο της μονάδας.
  • Συγχρονίστε τα αρχεία Gradle και είστε έτοιμοι να αρχίσετε να χρησιμοποιείτε τη βιβλιοθήκη σας!

Κλωνοποίηση ενός έργου GitHub

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

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

Για να κλωνοποιήσετε ένα έργο GitHub:

  • Δημιουργήστε έναν λογαριασμό GitHub.
  • Επιλέξτε 'Checkout from Version Control' από την οθόνη 'Welcome' της εφαρμογής Android Studio.
  • Καταχωρίστε τα διαπιστευτήριά σας στο GitHub.
  • Ανοίξτε το πρόγραμμα περιήγησης ιστού, μεταβείτε στο αποθετήριο GitHub που θέλετε να κλωνοποιήσετε και, στη συνέχεια, αντιγράψτε / επικολλήστε τη διεύθυνση URL του στο παράθυρο διαλόγου Android Studio.
  • Καθορίστε τον τοπικό κατάλογο όπου θέλετε να αποθηκεύσετε το κλωνοποιημένο αποθετήριο.
  • Δώστε σε αυτόν τον κατάλογο ένα όνομα και στη συνέχεια κάντε κλικ στο κουμπί "Κλώνος".

Τώρα έχετε ένα αντίγραφο του κώδικα της βιβλιοθήκης, μπορείτε να εισάγετε αυτήν τη βιβλιοθήκη στο έργο Android σας, ως νέα ενότητα:

  • Ανοίξτε το έργο όπου θέλετε να χρησιμοποιήσετε την κλωνοποιημένη βιβλιοθήκη σας και, στη συνέχεια, επιλέξτε 'Αρχείο> Νέα> Εισαγωγή μονάδας' από τη γραμμή εργαλείων του Android Studio.
  • Κάντε κλικ στο κουμπί με τρία κενά σημεία και περιηγηθείτε στο κλωβό σας. Επιλέξτε αυτό το χώρο αποθήκευσης και, στη συνέχεια, κάντε κλικ στο κουμπί "OK".
  • Κάντε κλικ στο κουμπί "Τέλος".
  • Επιλέξτε "Αρχείο> Δομή έργου" από τη γραμμή εργαλείων του Android Studio.
  • Στο αριστερό μενού, επιλέξτε τη λειτουργική μονάδα στην οποία θέλετε να χρησιμοποιήσετε αυτήν τη βιβλιοθήκη.
  • Επιλέξτε την καρτέλα "Εξαρτήσεις".

  • Επιλέξτε το εικονίδιο "+", ακολουθούμενο από την ένδειξη "Εξάρτηση μονάδας".
  • Επιλέξτε τη λειτουργική μονάδα της βιβλιοθήκης σας και στη συνέχεια κάντε κλικ στο κουμπί "OK".
  • Βγείτε από το παράθυρο "Δομή έργου".

Ανάλογα με τη βιβλιοθήκη που χρησιμοποιείτε, ίσως χρειαστεί να κάνετε ορισμένες προσαρμογές στον εισαγόμενο κώδικα πριν από την εκπόνηση του έργου σας. Για παράδειγμα, αν η καρτέλα του Android Studio διαμαρτύρεται για ασυμβίβαστες minSdkVersions, τότε πιθανότατα τα API που χρησιμοποιούνται από τη βιβλιοθήκη δεν είναι συμβατά με τις εκδόσεις της πλατφόρμας Android που ορίζονται στο αρχείο build.gradle του έργου σας. Ομοίως, εάν το Android Studio διαμαρτύρεται για το buildToolsVersion του έργου σας, τότε είναι πιθανό να υπάρξει αναντιστοιχία μεταξύ της έκδοσης που έχει οριστεί στη βιβλιοθήκη και της έκδοσης που ορίζεται σε άλλο σημείο του έργου σας. Και στα δύο αυτά σενάρια, θα πρέπει να ελέγξετε τις τιμές που ορίζονται στα δύο αρχεία build.gradle και να τα αλλάξετε αναλόγως.

Αντιμετώπιση προβλημάτων

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

Εάν αντιμετωπίζετε προβλήματα μετά την προσθήκη μιας βιβλιοθήκης στο έργο σας, δοκιμάστε τις ακόλουθες διορθώσεις:

  • Βεβαιωθείτε ότι δεν έχετε προσθέσει κατά λάθος πολλές εκδόσεις της ίδιας βιβλιοθήκης. Αν το Android Studio αναφέρει ένα σφάλμα "πολλαπλών αρχείων DEX ορίσετε ...", τότε ίσως έχετε προσθέσει την ίδια βιβλιοθήκη στο έργο σας περισσότερες από μία φορές. Μπορείτε να ελέγξετε τις εξαρτήσεις της μονάδας σας επιλέγοντας 'Αρχείο> Δομή έργου' από τη γραμμή εργαλείων του Android Studio, επιλέγοντας την ενότητα που θέλετε να εξετάσετε και κάνοντας κλικ στην καρτέλα 'Εξαρτήσεις'. Εάν μια βιβλιοθήκη εμφανίζεται σε αυτό το παράθυρο πολλές φορές, επιλέξτε το διπλότυπο και κάντε κλικ στο μικρό εικονίδιο '-' για να το αφαιρέσετε.
  • Αναζήτηση στον ιστό. Υπάρχει πάντα η πιθανότητα ότι άλλα άτομα ίσως έχουν αντιμετωπίσει το ίδιο πρόβλημα με εσένα, οπότε εκτελέστε μια γρήγορη αναζήτηση Google για να δείτε αν κάποιος έχει δημοσιεύσει σχετικά με αυτό το θέμα σε φόρουμ ή σε κοινότητες όπως το Stackoverflow. Μπορεί να έχετε ακόμη και τυχεροί και να βρείτε ένα blog ή ένα σεμινάριο που περιλαμβάνει οδηγίες σχετικά με τον τρόπο επίλυσης αυτού του ακριβούς ζητήματος.
  • Καθαρίστε και ανοικοδομήστε το έργο σας. Μερικές φορές, επιλέγοντας το "Build> Clean project" από τη γραμμή εργαλείων του Android Studio, που ακολουθείται από το έργο "Build> Rebuild project", μπορεί να είναι αρκετό για να λύσει το πρόβλημά σας.
  • Και αν όλα τα άλλα αποτύχουν ... Η λήψη λογισμικού τρίτου μέρους για την σωστή λειτουργία μερικές φορές απαιτεί λίγη δοκιμή και σφάλμα, οπότε αν υπάρχει εναλλακτική μέθοδος εισαγωγής της βιβλιοθήκης που επιλέξατε, αξίζει πάντα να δοκιμάσετε. Ακριβώς επειδή το σχέδιό σας αρνείται να καταρτίσει μετά την εισαγωγή ενός κλωνοποιημένου αποθετηρίου, δεν σημαίνει απαραίτητα ότι θα έχει την ίδια αντίδραση αν προσπαθήσετε να χρησιμοποιήσετε την ίδια βιβλιοθήκη ως απομακρυσμένη εξάρτηση.

Τυλίγοντας

Σε αυτό το άρθρο, εξετάσαμε πώς μπορείτε να προσθέσετε οποιαδήποτε βιβλιοθήκη ανακαλύπτετε στο GitHub, στο έργο σας Android, ανεξάρτητα από το αν η βιβλιοθήκη διανέμεται μέσω του JCenter ή του Maven Central. Και, ακόμη και αν δεν έχετε ιδέα για το ποια αποθήκη ή καταγραφή πρέπει να χρησιμοποιήσετε, τότε έχετε πάντα τη δυνατότητα να χρησιμοποιήσετε το JitPack ή να κλωνοποιήσετε τον κώδικα της βιβλιοθήκης.

Ανακαλύψατε οποιεσδήποτε υπέροχες βιβλιοθήκες Android στο GitHub; Ενημερώστε μας στα σχόλια παρακάτω!

Όπως πολλοί μεγάλοι κατασκευαστές Android, υπάρχουν περισσότερα για τη Xiaomi από ό, τι τα martphone. Η κινεζική εταιρεία έχει πολλά επιχειρηματικά εγχειρήματα, συμπεριλαμβανομένης της δικής της τεράσ...

Άλλες μεγάλες αλλαγές αφθονούν. Ενώ η βασική διάταξη κουμπιών παραμένει η ίδια, η θύρα micro-UB από τη Note 6 Pro έχει αντικατασταθεί από μια υποδοχή UB-C. Αυτό είναι σίγουρα μια ευπρόσδεκτη κίνηση, μ...

Νέες Θέσεις