Εμφανίστε βίντεο YouTube, Vimeo και Dailymotion στις εφαρμογές σας Android

Συγγραφέας: Laura McKinney
Ημερομηνία Δημιουργίας: 3 Απρίλιος 2021
Ημερομηνία Ενημέρωσης: 16 Ενδέχεται 2024
Anonim
Πως Ανεβαζω Video στο YouTube Σωστα 2020 | How to Upload a Video on YouTube | Make Video Greece
Βίντεο: Πως Ανεβαζω Video στο YouTube Σωστα 2020 | How to Upload a Video on YouTube | Make Video Greece

Περιεχόμενο


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

Πώς να ενσωματώσετε βίντεο YouTube στην εφαρμογή Android

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

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

Όταν πρόκειται για τη δημοσίευση βίντεο στο διαδίκτυο, υπάρχει ένας ιστότοπος που αναβοσβήνει αμέσως, έτσι σε αυτή την ενότητα θα σας δείξω πώς να ενσωματώσετε όποιος Βίντεο YouTube στην εφαρμογή σας, χρησιμοποιώντας τη βιβλιοθήκη πελάτη API του YouTube Player.


Ανάκτηση αναγνωριστικού βίντεο YouTube

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

Μπορείτε να χρησιμοποιήσετε οποιοδήποτε βίντεο στο YouTube, αλλά επιλέγω την αγαπημένη τεχνολογία του 2018. "Τοποθετήστε το βίντεο που έχετε επιλέξει και ρίξτε μια ματιά στη διεύθυνση URL του στη γραμμή διευθύνσεων του προγράμματος περιήγησης, για παράδειγμα η διεύθυνση URL για το βίντεο είναι:

youtube.com/watch?v=hJLBcViaX8Q

Το αναγνωριστικό είναι το τμήμα της διεύθυνσης URL που αναγνωρίζει μοναδικά αυτό το βίντεο, το οποίο είναι η συμβολοσειρά χαρακτήρων στο τέλος της διεύθυνσης URL (βασικά, όλα μετά το σύμβολο "="). Το αναγνωριστικό βίντεο για το βίντεο είναι:

hJLBcViaX8Q

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

Αποκτήστε το δακτυλικό αποτύπωμα SHA-1 του έργου σας

Προκειμένου να αποκτήσετε πρόσβαση στο API του YouTube Android Player, θα πρέπει να δημιουργήσετε ένα κλειδί API με περιορισμούς Android. Αυτό συνεπάγεται τη σύνδεση του κλειδιού API με το μοναδικό πακέτο του έργου και το δακτυλικό αποτύπωμα του πιστοποιητικού (SHA-1).


Μπορείτε να ανακτήσετε το δακτυλικό αποτύπωμα SHA-1 του έργου σας, μέσω της Κονσόλας Gradle:

  • Επιλέξτε την καρτέλα Gradle κατά μήκος της δεξιάς πλευράς του παραθύρου του Android Studio.
  • Επιλέξτε την ενότητα "εφαρμογή", ακολουθούμενη από "Εργασίες> Android> υπογραφή αναφοράς."

  • Ανοίξτε την καρτέλα Gradle Console που εμφανίζεται προς τα κάτω στο δεξί μέρος της οθόνης.
  • Η κονσόλα Gradle θα ανοίξει αυτόματα. Βρείτε την τιμή SHA-1 σε αυτό το παράθυρο και σημειώστε το.

Χρησιμοποιούμε ένα δακτυλικό αποτύπωμα πιστοποιητικού εντοπισμού σφαλμάτων, το οποίο είναι κατάλληλο μόνο για τη δοκιμή μιας εφαρμογής. Πριν δημοσιεύσετε μια εφαρμογή, πρέπει πάντα να δημιουργήσετε ένα νέο κλειδί API βάσει του πιστοποιητικού έκδοσης της συγκεκριμένης εφαρμογής.

Εγγραφείτε με την Κονσόλα API Google

Για να μπορέσετε να χρησιμοποιήσετε το API του YouTube Android Player, πρέπει να καταχωρίσετε την αίτησή σας στην Κονσόλα API Google:

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

  • Στο επόμενο παράθυρο, επιλέξτε "Νέο έργο".
  • Δώστε στο έργο σας ένα όνομα και, στη συνέχεια, κάντε κλικ στο κουμπί "Δημιουργία".
  • Στο αριστερό μενού, επιλέξτε "Πιστοποιητικά".
  • Δώστε στο μπλε κουμπί "Δημιουργία διαπιστευτηρίων" ένα κλικ και, στη συνέχεια, επιλέξτε "API key".
  • Το κλειδί API θα εμφανιστεί τώρα σε αναδυόμενο παράθυρο, το οποίο περιλαμβάνει μια ερώτηση για να περιορίσετε αυτό το κλειδί API. Τα κλειδιά που είναι κλειστά είναι ασφαλέστερα, επομένως αν δεν απαιτήσετε ρητά ένα κλειδί API χωρίς περιορισμούς, επιλέξτε "Περιορισμός κλειδιού".
  • Στην επόμενη οθόνη, δώστε στο κλειδί API σας ένα διακριτικό όνομα.
  • Επιλέξτε το κουμπί επιλογής "Εφαρμογές Android".
  • Κάντε κλικ στην επιλογή "Προσθήκη ονόματος πακέτου και δακτυλικών αποτυπωμάτων".
  • Αντιγράψτε / επικολλήστε το δακτυλικό αποτύπωμα SHA-1 του έργου σας στην επόμενη ενότητα και στη συνέχεια πληκτρολογήστε το όνομα του πακέτου του έργου σας (το οποίο εμφανίζεται στην κορυφή κάθε αρχείου κλάσης Java και στο Manifest του έργου σας).
  • Όταν είστε ικανοποιημένοι με τις πληροφορίες που έχετε εισάγει, κάντε κλικ στην επιλογή "Αποθήκευση".

Κάντε λήψη του API του YouTube Android Player

Στη συνέχεια, θα πρέπει να πραγματοποιήσετε λήψη της βιβλιοθήκης πελάτη API του YouTube Android Player. Όταν χρησιμοποιείτε αυτήν τη βιβλιοθήκη, συνιστάται να ενεργοποιήσετε το ProGuard, για να διατηρήσετε το APK σας όσο το δυνατόν πιο ελαφρύ.

Για να προσθέσετε τη βιβλιοθήκη YouTube στο έργο σας:

  • Προχωρήστε στον ιστότοπο του YouTube Player του Android και κατεβάστε την τελευταία έκδοση.
  • Αποσυμπιέστε το επόμενο αρχείο zip.
  • Ανοίξτε τον νέο φάκελο και κάντε περιήγηση στον υποφάκελο "libs" - θα πρέπει να περιέχει ένα αρχείο "YouTubeAndroidPlayerApi.jar".
  • Στο Android Studio, μεταβείτε στην προβολή "Έργο".
  • Για να διασφαλίσετε ότι η βιβλιοθήκη του YouTube περιλαμβάνεται στη διαδρομή δημιουργίας σας, θα πρέπει να εισαγάγετε το .jar στο έργο "/ libs ". Ανοίξτε το φάκελο "app / libs" του έργου σας και στη συνέχεια σύρετε και αποθέστε το .jar στη θέση του.

  • Ανοίξτε το αρχείο build.gradle και προσθέστε τη βιβλιοθήκη YouTube ως εξάρτηση έργου:

dependencies {υλοποίηση fileTree (dir: libs, include:) υλοποίηση com.android.support:appcompat-v7:28.0.0 υλοποίηση com.android.support:design:28.0.0 υλοποίηση com.android.support.constraint: constraint-layout : 1.1.3 testImplementation junit: junit: 4.12 καιroidTestImplementation com.android.support.test: runner: 1.0.2 // Προσθέστε τα ακόλουθα // αρχεία υλοποίησης (libs / YouTubeAndroidPlayerApi.jar)}

  • Όταν σας ζητηθεί, συγχρονίστε τα αρχεία Gradle.

Ενημερώστε το Manifest σας

Εάν η αίτησή σας πρόκειται να εμφανιστεί όποιος online περιεχόμενο βίντεο, τότε θα χρειαστεί πρόσβαση στο Internet.

Ανοίξτε το Manifest του έργου σας και προσθέστε το δικαίωμα Internet:

Για να δώσω στον χρήστη μια γεύση από αυτή την κινηματογραφική, ευρεία οθόνη εμπειρία, είμαι επίσης ρύθμιση MainActivity για να ξεκινήσει σε κατάσταση οριζόντιου προσανατολισμού:

Δημιουργία της διάταξης του YouTube Player

Μπορείτε να προβάλλετε ένα βίντεο YouTube χρησιμοποιώντας είτε:

  • YouTubePlayerView. Εάν θέλετε να χρησιμοποιήσετε το YouTubePlayerView στη διάταξή σας, τότε θα πρέπει να επεκτείνετε το YouTubeBaseActivity στην αντίστοιχη κλάση δραστηριότητας αυτής της διάταξης.
  • YouTubePlayerFragment. Αυτό είναι ένα κομμάτι που περιέχει ένα YouTubePlayerView. Αν επιλέξετε να εφαρμόσετε ένα YouTubePlayerFragment, τότε εσείς συνηθισμένος πρέπει να επεκταθεί από το YouTubeBaseActivity.

Θα χρησιμοποιήσω το YouTubePlayerView, ανοίξτε το αρχείο "activity_main.xml" του έργου σας και προσθέστε ένα widget YouTubePlayerView:

Εφαρμογή του προγράμματος αναπαραγωγής YouTube

Στη συνέχεια, ανοίξτε το MainActivity και ολοκληρώστε τις παρακάτω εργασίες:

1. Επέκταση του YouTubeBaseActivity

Εφόσον χρησιμοποιούμε ένα YouTubePlayerView στη διάταξη μας, πρέπει να επεκτείνουμε το YouTubeBaseActivity:

η δημόσια κλάση MainActivity επεκτείνει το YouTubeBaseActivity {

2. Αρχικοποιήστε το YouTube Player

Αρχικοποιούμε το πρόγραμμα αναπαραγωγής του YouTube καλώντας initialize () και περάνοντας το κλειδί API που δημιουργήσαμε νωρίτερα:

YouTubePlayerView youTubePlayerView = (YouTubePlayerView) findViewById (R.id.YouTubePlayer); youTubePlayerView.initialize (YOUR_API_KEY, νέο YouTubePlayer.OnInitializedListener () {

3. Εφαρμόστε την πρωτοβουλία InitializationSuccess και onInitializationFailure

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

δημόσιο κενό onInitializationSuccess (πάροχος YouTubePlayer.Provider, YouTubePlayer youTubePlayer, boolean b) {// Καθορίστε το αναγνωριστικό βίντεο // youTubePlayer.loadVideo ("hJLBcViaX8Q");

Στη συνέχεια, πρέπει να πούμε στην αίτησή μας πώς πρέπει να χειριστεί αποτυχημένες προετοιμασίες. Θα παρουσιάσω ένα τοστ:

δημόσιο κενό onInitializationFailure (πάροχος YouTubePlayer.Provider, YouTubeInitializationResult youTubeInitializationResult) {Toast.makeText (MainActivity.this, "Παρουσιάστηκε σφάλμα", Toast.LENGTH_SHORT) .show (); }}

Αναπαραγωγή βίντεο YouTube: Ολοκληρωμένος κώδικας

Προσθέστε όλα τα παραπάνω στο MainActivity σας, και θα πρέπει να καταλήξετε σε κάτι σαν αυτό:

εισαγωγή android.os.Bundle; εισαγωγή καιroid.widget.Toast; εισαγωγή com.google.android.youtube.player.YouTubeBaseActivity; εισαγωγή com.google.android.youtube.player.YouTubeInitializationResult; εισαγωγή com.google.android.youtube.player.YouTubePlayer. εισαγωγή com.google.android.youtube.player.YouTubePlayerView. // Επέκταση του YouTubeBaseActivity // δημόσια class MainActivity επεκτείνει το YouTubeBaseActivity {// Μην ξεχάσετε να το αντικαταστήσετε με το δικό σας μοναδικό κλειδί API // public static final String YOUR_API_KEY = "YOUR_API_KEY_HERE"; @Override προστατεύεται void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); YouTubePlayerView youTubePlayerView = (YouTubePlayerView) findViewById (R.id.YouTubePlayer); // Αρχικοποιήστε το YouTube Player // youTubePlayerView.initialize (YOUR_API_KEY, νέο YouTubePlayer.OnInitializedListener () {@Override // Εάν το πρόγραμμα αναπαραγωγής του YouTube προετοιμαστεί με επιτυχία ... // public void onInitializationSuccess (YouTubePlayer.Provider, YouTubePlayer youTubePlayer, boolean β) {// ..και αρχίστε να παίζετε το ακόλουθο βίντεο // youTubePlayer.loadVideo ("hJLBcViaX8Q")}} @Override // Εάν η προετοιμασία αποτύχει ... // public void onInitializationFailure (YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {// τότε εμφανίζει ένα τοστ // Toast.makeText (MainActivity.this, "Παρουσιάστηκε σφάλμα", Toast.LENGTH_SHORT) .show ();}}). }}

Δοκιμάστε το API του YouTube Android Player

Μπορείτε να δοκιμάσετε αυτήν την εφαρμογή είτε σε ένα φυσικό Android smartphone ή tablet είτε σε ένα AVD. Εάν χρησιμοποιείτε ένα AVD, βεβαιωθείτε ότι χρησιμοποιείτε μια εικόνα συστήματος που περιλαμβάνει υπηρεσίες Google Play. Η εφαρμογή YouTube πρέπει επίσης να εγκατασταθεί στην AVD ή στη φυσική συσκευή Android, καθώς το API YouTube βασίζεται σε μια υπηρεσία που διανέμεται ως μέρος της εφαρμογής YouTube για Android.

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

Εμφάνιση περιεχομένου Dailymotion σε ένα WebView

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

Το κιτ Dailymotion Player SDK για Android παρέχει ένα λεπτό περιτύλιγμα γύρω από το στοιχείο WebView του Android, το οποίο διευκολύνει την ενσωμάτωση βίντεο Dailymotion στις εφαρμογές σας.

Σε αυτήν την ενότητα, θα σας δείξω πώς να προβάλλετε βίντεο από την ιστοσελίδα Dailymotion, χρησιμοποιώντας το SDK Player Dailymotion Player.

Αποκτήστε το αναγνωριστικό βίντεο Dailymotion

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

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

www.dailymotion.com/video/x71jlg3

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

Προσθέτοντας το SDK Dailymotion

Δεδομένου ότι χρησιμοποιούμε το SDK Dailymotion, πρέπει να το δηλώσουμε ως εξάρτηση έργου. Ανοίξτε το αρχείο build.grade του έργου σας και προσθέστε τα εξής:

dependencies {υλοποίηση fileTree (dir: libs, include:) // Προσθέστε την ακόλουθη // υλοποίηση com.dailymotion.dailymotion-sdk-android: sdk: 0.1.29 υλοποίηση com.android.support:appcompat-v7:28.0.0 υλοποίηση com.android.support:design:28.0.0 υλοποίηση com.android.support.constraint: περιορισμός-διάταξη: 1.1.3 testImplementation junit: junit: 4.12 καιroidTestImplementation com.android.support.test: runner: 1.0.2}

Όταν σας ζητηθεί, επιλέξτε "Sync Project with Gradle Files".

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

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

Ζητήστε πρόσβαση στο Internet

Και πάλι, προβάλλουμε περιεχόμενο από το World Wide Web, οπότε το έργο μας απαιτεί την άδεια Internet:

Κάθε δραστηριότητα που εμφανίζει το περιεχόμενο Dailymotion πρέπει να έχει ένα χαρακτηριστικό "android: configChanges", ώστε να προσθέσετε τα ακόλουθα στο MainActivity:

Προσθέτοντας το Widget PlayerWebView του Dailymotion

Το κύριο συστατικό του Dailymotion SDK είναι το στοιχείο UI του PlayerWebView, το οποίο παρέχει ένα λεπτό περιτύλιγμα γύρω από το στοιχείο WebView του Android.

Θα εξετάσουμε λεπτομερέστερα το WebViews στην παρακάτω ενότητα, αλλά το WebViews σας δίνει ουσιαστικά έναν τρόπο να ενσωματώσετε ιστοσελίδες στην εφαρμογή σας. Αν δεν χρησιμοποιούσαμε το εξειδικευμένο PlayerWebView του SDK, τότε θα μπορούσαμε να χρησιμοποιήσουμε το στοιχείο VanView του Android για να εμφανίσουμε ολόκληρη την ιστοσελίδα Dailymotion μέσα στην εφαρμογή μας.

Αντ 'αυτού, ας προσθέσουμε ένα PlayerWebView στη διάταξή μας:

Ρύθμιση του DailyWebtion PlayerWebView

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

Ανοίξτε το MainActivity και ξεκινήστε κάνοντας αναφορά στο PlayerWebView:

dailyMotionPlayer = (ΠαίκτηςWebView) findViewById (R.id.dailymotionPlayer);

Στη συνέχεια, καλέστε "dailyMotionPlayer.load" και δώστε το αναγνωριστικό βίντεο που ανακτήσαμε νωρίτερα:

dailyMotionPlayer.load ("x71jlg3");

Αυτό μας δίνει τα εξής:

εισαγωγή καιroid.support.v7.app.AppCompatActivity; εισαγωγή android.os.Bundle; εισαγωγή com.dailymotion.android.player.sdk.PlayerWebView; εισαγωγή java.util.HashMap; εισαγωγή java.util.Map; η δημόσια κλάση MainActivity επεκτείνει την AppCompatActivity {ιδιωτική PlayerWebView καθημερινάMotionPlayer; @Override προστατεύεται void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); // Ανάκτηση του PlayerWebView // dailyMotionPlayer = (PlayerWebView) findViewById (R.id.dailymotionPlayer); Χάρτης playerParams = νέο HashMap <> (); // Φορτώστε το βίντεο με τις παραμέτρους // playerParams.put ("κλειδί", "αξία"); // Περάστε το αναγνωριστικό βίντεο // dailyMotionPlayer.load ("x71jlg3"); }}

Εγκαταστήστε το έργο σας σε μια φυσική συσκευή Android ή εξομοιωτή και το βίντεο Dailymotion θα πρέπει να αρχίσει να αναπαράγεται αυτόματα.

Ενσωμάτωση βίντεο Vimeo

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

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

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

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

Ενημέρωση του Manifest

Εφόσον προβάλλουμε ένα βίντεο από το Διαδίκτυο, πρέπει να προσθέσουμε την άδεια Internet στο Manifest:

Θα προχωρήσω επίσης στην εκκίνηση της MainActivity σε λειτουργία τοπίου:

Προσθήκη WebView στο UI μας

Στη συνέχεια, προσθέστε ένα WebView στην εφαρμογή μας. Μπορούμε είτε να προσθέσουμε το WebView στη διάταξη της Δραστηριότητας είτε να μετατρέψουμε ολόκληρη τη Δραστηριότητα σε WebView, εφαρμόζοντας τη στη μέθοδο onCreate () της εφαρμογής μας.

Θα προσθέσω ένα WebView στη διάταξη της εφαρμογής μας:

Επιλέξτε το βίντεό σας

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

  • Προχωρήστε στο Vimeo και επιλέξτε ένα βίντεο που θέλετε να χρησιμοποιήσετε. Έχω επιλέξει αυτή τη χειμερινή χρονική περίοδο.
  • Δώστε στο κουμπί "Κοινή χρήση" ένα κλικ.
  • Επιλέξτε το εικονίδιο "Ενσωμάτωση". αυτό θα σας παράσχει έναν κώδικα ενσωμάτωσης που θα πρέπει να μοιάζει με κάτι τέτοιο:

Αυτός ο κώδικας παρέχει τις ακόλουθες πληροφορίες:

  • iframe. Καθορίζει ότι ενσωματώνουμε μια άλλη σελίδα HTML μέσα στο τρέχον πλαίσιο.
  • src. Η διαδρομή του βίντεο, οπότε η εφαρμογή σας ξέρει πού να βρει αυτό το βίντεο.
  • πλάτος ύψος. Οι διαστάσεις του βίντεο.
  • frameborder. Είτε πρόκειται να εμφανιστεί ένα περίγραμμα γύρω από το πλαίσιο του βίντεο. Οι πιθανές τιμές είναι τα σύνορα (1) και τα σύνορα (0).
  • allowfullscreen. Αυτό επιτρέπει στο βίντεο να εμφανίζεται σε λειτουργία πλήρους οθόνης.

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

Σειρά vimeoVideo = "Ο ΣΥΝΔΡΟΜΟΣ ΣΑΣ ΠΑΡΕΧΕΤΕ ΕΔΩ';

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

Σειρά vimeoVideo = "';

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

Σειρά vimeoVideo = "';

Εμφάνιση μιας ιστοσελίδας στην εφαρμογή Android

Τώρα έχουμε δημιουργήσει τη διάταξή μας και έχουμε το HTML μας έτοιμο να ξεκινήσουμε, να ανοίξουμε το MainActivity και να επιτρέψουμε την υλοποίηση του WebView.

Ξεκινήστε προσθέτοντας τη συμβολοσειρά HTML:

Σειρά vimeoVideo = "';

Στη συνέχεια, πρέπει να φορτώσουμε την παραπάνω ιστοσελίδα στο WebView χρησιμοποιώντας τη μέθοδο loadUrl ():

webView.loadUrl (request.getUrl (). toString ());

Το JavaScript είναι απενεργοποιημένο από προεπιλογή, επομένως θα πρέπει να το ενεργοποιήσουμε στο WebView.

Κάθε φορά που δημιουργείτε ένα WebView, εκχωρείται αυτόματα ένα σύνολο προεπιλεγμένων ρυθμίσεων Web. Θα ανακτήσουμε αυτό το αντικείμενο WebSettings, χρησιμοποιώντας τη μέθοδο getSettings (), και στη συνέχεια ενεργοποιήσετε τη JavaScript, χρησιμοποιώντας το setJavaScriptEnabled ().

WebSettings webSettings = webView.getSettings (); webSettings.setJavaScriptEnabled (true);

Μετά την προσθήκη όλων αυτών στο MainActivity σας, ο κώδικας σας θα πρέπει να φαίνεται ως εξής:

εισαγωγή καιroid.support.v7.app.AppCompatActivity; εισαγωγή android.os.Bundle; εισαγωγή καιroid.webkit.WebResourceRequest; εισαγωγή καιroid.webkit.WebSettings; εισαγωγή καιroid.webkit.WebView; εισαγωγή καιroid.webkit.WebViewClient; η δημόσια κλάση MainActivity επεκτείνει το AppCompatActivity {@Override protected void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); Σειρά vimeoVideo = ""WebView webView = (WebView) findViewById (R.id.myWebView); webView.setWebViewClient (νέο WebViewClient () {@Override public boolean shouldOverrideUrlLoading (WebView webView, αίτημα WebResourceRequest) {webView.loadUrl (request.getUrl (), WebSettings = webView.getSettings (), webSettings.setJavaScriptEnabled (true), webView.loadData (vimeoVideo, "text / html", "utf-8"))})

Δοκιμάστε την εφαρμογή Vimeo

Γνωρίζετε ήδη το τρυπάνι: εγκαταστήστε αυτό το έργο σε μια φυσική συσκευή Android ή AVD. Το WebView δεν έχει ρυθμιστεί να αναπαράγεται αυτόματα, οπότε θα χρειαστεί να βγάλετε το βίντεο για να αποκαλύψετε τα μέσα ελέγχου της Vimeo. Στη συνέχεια, μπορείτε να κάνετε αναπαραγωγή, παύση, γρήγορη μετακίνηση προς τα εμπρός και προς τα εμπρός στο βίντεο, για να βεβαιωθείτε ότι λειτουργεί σωστά.

Τυλίγοντας

Σε αυτό το άρθρο, σας έδειξα πώς να προσθέτετε βίντεο YouTube, Vimeo και Dailymotion στις εφαρμογές σας, χρησιμοποιώντας API και SDK ειδικά για πλατφόρμες και το δικό του στοιχείο WebView του Android. Σας έδειξα επίσης πώς να συνδέσετε ένα αρχείο βίντεο με την εφαρμογή σας, έτσι ώστε να μπορεί να αποθηκευτεί και να αναπαραχθεί σε τοπικό επίπεδο.

Ποιος είναι ο αγαπημένος σας τρόπος προβολής περιεχομένου πολυμέσων στους χρήστες σας; Ενημερώστε μας στα σχόλια παρακάτω!

Η amung πρόκειται να αποκαλύψει το Σημείωμα Galaxy 10 σε λιγότερο από ένα μήνα. Ενώ αναμένουμε ότι αυτό το ακουστικό θα είναι ένα από τα καλύτερα martphone στην αγορά, αυτό δεν σημαίνει ότι ο προκάτοχ...

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

Δημοφιλής