Πώς να ελέγξετε εάν το Camera2 API είναι ενεργοποιημένο στη συσκευή σας Android

Το υλικό ενός smartphone είναι συχνά ικανό για περισσότερα από αυτά που επιτρέπει το λογισμικό από προεπιλογή. Αυτός είναι ακριβώς ο λόγος Θύρες κάμερας Google έχουν γίνει πολύ δημοφιλή στα φόρουμ μας, καθώς πολλοί τα βλέπουν ως έναν εύκολο τρόπο για να βελτιώσετε δραματικά την ποιότητα της εικόνας σε ένα ευρύ φάσμα συσκευών. Με τη φορητή εφαρμογή Google Camera, μπορείτε να χρησιμοποιήσετε την ανώτερη βελτιστοποίηση HDR+ της Google καθώς και τη λειτουργία Πορτραίτου στη συσκευή σας που δεν ανήκει στην Google. Ωστόσο, πρέπει να έχετε συναντήσει έναν συγκεκριμένο όρο - "Camera2 API" - ενώ διαβάζετε για αυτές τις θύρες. Σε αυτό το σεμινάριο, θα μάθετε τι σημαίνει στην πραγματικότητα ο όρος και πώς μπορείτε να ελέγξετε την κατάσταση της υποστήριξης του Camera2 API στα τηλέφωνά σας Android.


Τι είναι το Camera2 API;

Η μονάδα φυσικής κάμερας στο τηλέφωνό σας είναι ένα απίστευτα πολύπλοκο κομμάτι υλικού, αλλά το Android δεν χρειάζεται να τα γνωρίζει όλα τις χαμηλού επιπέδου παραμέτρους για την αλληλεπίδραση με αυτό, χάρη στην κάμερα Hardware Abstraction Layer (HAL) που υλοποιείται από το SoC πωλητές. Η διεπαφή προγραμματισμού εφαρμογών (API) ειδικά για την κάμερα βρίσκεται πάνω από το HAL και λειτουργεί ως δημόσιο πλαίσιο σε επίπεδο εφαρμογής. Με λίγα λόγια, το Camera API επιτρέπει στις εφαρμογές να διερευνούν τα χαρακτηριστικά της κάμερας σε μια συσκευή με βελτιστοποιημένο τρόπο, χωρίς να ενοχλούνται για την ακαμψία του αισθητήρα της κάμερας.

Η Google παρουσίασε το Camera2 API στο Android 5.0 Lollipop ως διάδοχος του αρχικού API κάμερας προκειμένου να προσδιορίσετε καλύτερα πώς οι εφαρμογές μπορούν να αλληλεπιδράσουν με τις μεμονωμένες κάμερες που είναι συνδεδεμένες στο smartphone σας. Εκθέτει έναν αριθμό λεπτομερών στοιχείων ελέγχου κάμερας στις εφαρμογές, συμπεριλαμβανομένων αποτελεσματικών ροών ριπής/ροής μηδενικής αντιγραφής και χειριστήρια ανά καρέ έκθεσης, απολαβής, αύξησης ισορροπίας λευκού, μετατροπής χρώματος, αφαίρεσης θορύβων, ευκρίνειας και πολλά άλλα.

Υπάρχουν πέντε διαφορετικά επίπεδα υποστήριξης για το Camera2 API:

  • Κληρονομιά: Συσκευές παλαιού τύπου που δεν υποστηρίζουν λειτουργίες API2 της κάμερας, όπως στοιχεία ελέγχου ανά καρέ. Αυτές οι συσκευές εκθέτουν δυνατότητες σε εφαρμογές μέσω των διεπαφών Camera API2 που είναι περίπου οι ίδιες δυνατότητες με εκείνες που εκτίθενται σε εφαρμογές μέσω των διασυνδέσεων Camera API1.
  • Περιορισμένος: Αυτές οι συσκευές υποστηρίζουν μόνο ένα υποσύνολο όλων των δυνατοτήτων του Camera API2.
  • Γεμάτος: Αυτές οι συσκευές υποστηρίζουν όλες τις κύριες δυνατότητες του Camera API2 και πρέπει να χρησιμοποιούν Κάμερα HAL 3.2 ή νεότερη έκδοση και Android 5.0 ή νεότερη έκδοση.
  • Επίπεδο_3: Αυτές οι συσκευές υποστηρίζουν επανεπεξεργασία YUV και λήψη εικόνων RAW, μαζί με πρόσθετες διαμορφώσεις ροής εξόδου πέρα ​​από την πλήρη υποστήριξη Camera2 API.
  • Εξωτερικός: Παρόμοια με LIMITED συσκευές με ορισμένες εξαιρέσεις (π.χ. ορισμένες πληροφορίες αισθητήρα ή φακού ενδέχεται να μην αναφέρονται ή να έχουν λιγότερο σταθερούς ρυθμούς καρέ). Αυτό το επίπεδο χρησιμοποιείται για εξωτερικές κάμερες όπως κάμερες web USB.

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


Πώς να ελέγξετε εάν το Camera2 API είναι ενεργοποιημένο

Η ιστοσελίδα για το Σουίτα δοκιμής εικόνας μέρος του Compatibility Test Suite (CTS) αναφέρει ότι Κάμερα HAL3 συνιστάται ανεπιφύλακτα η υποστήριξη με το Camera2 API πιστοποιημένες συσκευές τρέχει Android 9 ή νεότερη έκδοση. Τούτου λεχθέντος, πολλές συσκευές στο παρελθόν δεν είχαν την υποστήριξη του Camera2 API out-of-the-box. Για να ενεργοποιήσουν το API, ορισμένοι από αυτούς απαιτούν είτε root για να τροποποιήσουν το build.prop τους είτε απλώς έναν ξεκλείδωτο bootloader για να εκτελούν εντολές Fastboot για συγκεκριμένους προμηθευτές. Πιο πρόσφατα όμως, τα πράγματα έχουν αρχίσει να αλλάζουν.

Για να μάθετε την κατάσταση της υποστήριξης Camera2 API στη συσκευή σας, επιλέξτε μία από τις ακόλουθες μεθόδους.

Μέθοδος 1: Χρήση ADB

Πριν ξεκινήσετε με αυτήν τη μέθοδο, βεβαιωθείτε ότι έχετε πρόσβαση σε υπολογιστή/Mac με Το ADB και το Fastboot έχουν εγκατασταθεί.

  1. Στο τηλέφωνό σας, ενεργοποιήστε τον εντοπισμό σφαλμάτων USB από τις Επιλογές προγραμματιστή.
    • Μπορεί να χρειαστεί ενεργοποιήστε τις επιλογές προγραμματιστή πρώτα.
  2. Συνδέστε τη συσκευή σας στο PC/Mac.
  3. Ανοίξτε μια γραμμή εντολών ή ένα PowerShell (Windows) ή ένα παράθυρο τερματικού (macOS ή Linux).
    • Σε περίπτωση που η θέση του δυαδικού αρχείου ADB δεν έχει καθοριστεί στις καθολικές ρυθμίσεις PATH, πρέπει να αλλάξετε τον κατάλογο εργασίας του κελύφους στη θέση όπου τοποθετείται το δυαδικό ADB.
  4. Πληκτρολογήστε την ακόλουθη εντολή:
    adb shell "getprop | grep HAL3"
  5. Εάν το αποτέλεσμα είναι ένα από τα ακόλουθα:
    [persist.camera.HAL3.enabled]: [1]
    [persist.vendor.camera.HAL3.enabled]: [1]
    , τότε η συσκευή σας διαθέτει Camera HAL3 με πλήρη υποστήριξη Camera2 API.

Μέθοδος 2: Χρήση εξομοιωτή τερματικού

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

  1. Κατεβάστε μια εφαρμογή εξομοιωτή τερματικού της επιλογής σας. Παραθέτουμε μερικά δημοφιλή παρακάτω.
  2. Ανοίξτε την εφαρμογή και πληκτρολογήστε την ακόλουθη εντολή:
    getprop | grep HAL3
  3. Εάν το αποτέλεσμα είναι ένα από τα ακόλουθα:
    [persist.camera.HAL3.enabled]: [1]
    [persist.vendor.camera.HAL3.enabled]: [1]
    , τότε η συσκευή σας διαθέτει Camera HAL3 με πλήρη υποστήριξη Camera2 API.

[appbox googleplay "jackpal.androidterm"]

[appbox fdroid "com.termux"]

Λάβετε υπόψη ότι η υποστήριξη HAL3 δεν σημαίνει ότι όλες οι λειτουργίες του Camera2 API είναι διαθέσιμες, ως η εταιρεία θα μπορούσε ακόμα να τροποποιήσει λειτουργίες όπως υποστήριξη λήψης RAW, επίπεδα ISO, χρόνους έκθεσης και περισσότερο. Αυτός είναι ο λόγος για τον οποίο συνιστούμε να επιλέξετε την τρίτη μέθοδο, καθώς προσφέρει πιο αναλυτικές πληροφορίες.


Μέθοδος 3: Χρήση μιας αποκλειστικής εφαρμογής τρίτου μέρους

Δεν θέλετε να ασχοληθείτε με τη διεπαφή της γραμμής εντολών; Στη συνέχεια, απλώς κατεβάστε την εφαρμογή Camera2 API Probe στη συσκευή-στόχο Android από το Google Play Store.

[appbox googleplay "com.airbeat.device.inspector"]

Μόλις εγκατασταθεί, η εφαρμογή θα εμφανίσει δύο ή περισσότερες ενότητες ανάλογα με τον αριθμό των φακών κάμερας που διαθέτει η συσκευή σας (π.χ. "Κωδικός κάμερας: 0" αντιπροσωπεύει τη μονάδα της πίσω κάμερας). Κάτω από κάθε αναγνωριστικό κάμερας, μπορείτε να βρείτε μια υποκατηγορία διαφόρων λειτουργιών και τις λεπτομέρειες υποστήριξής τους. Μας ενδιαφέρει ιδιαίτερα η κατηγορία που ονομάζεται "Επίπεδο υποστήριξης υλικού" που δείχνει το επίπεδο υποστήριξης του Camera2 API στη συσκευή.

Όπως μπορείτε να δείτε, η εφαρμογή όχι μόνο ανακαλύπτει το ακριβές επίπεδο Camera2 API για τη συσκευή σας, αλλά παραθέτει επίσης διάφορες άλλες λειτουργίες που υποστηρίζονται από τη μονάδα κάμερας. Οι πληροφορίες μπορεί να είναι χρήσιμες κατά την εγκατάσταση εφαρμογών κάμερας τρίτων, όπως μια συγκεκριμένη θύρα Google Camera που μπορεί να χρησιμοποιήσει αυτές τις δυνατότητες.

Εάν θέλετε να εμβαθύνετε και να ανακαλύψετε περισσότερες πληροφορίες σχετικά με τις υποστηριζόμενες επεκτάσεις Camera2 (καθώς και CameraX), δώστε Πληροφορίες CameraX από τον αναγνωρισμένο προγραμματιστή XDA Zacharee1 a go. Λάβετε υπόψη ότι η εφαρμογή παραθέτει μόνο τις λειτουργίες που έχει εκθέσει ο κατασκευαστής της συσκευής σας σε εφαρμογές τρίτων. Δεν θα πρέπει να χρησιμοποιείται για την απαρίθμηση των χαρακτηριστικών που είναι ενσωματωμένες στην εγγενή εφαρμογή κάμερας.

Πληροφορίες CameraXΠρογραμματιστής: Zachary Wander

Τιμή: Δωρεάν.

Κατεβάστε

Ελπίζουμε να μπορείτε τώρα να εντοπίσετε γρήγορα εάν το Camera2 API είναι ενεργοποιημένο ή όχι στη συσκευή σας χρησιμοποιώντας αυτόν τον οδηγό. Ενημερώστε μας τη μέθοδο που προτιμάτε στα σχόλια!