Το Android 11 θα σκληρύνει τους κρυφούς περιορισμούς API και θα καταργήσει τη μετα-ανακλάση

Το Android 9 Pie εισήγαγε κρυφούς περιορισμούς API και τώρα, το Android 11 θα σκληρύνει αυτούς τους περιορισμούς για να αφαιρέσει την παράκαμψη μετα-ανακλάσεως.

Για όσους από εσάς δεν γνωρίζετε, η Google εισήγαγε μια μάλλον ενοχλητική αλλαγή στο Android 9 Pie που αφορά τους ενθουσιώδεις προγραμματιστές που θέλουν να ξεπεράσουν τα όρια του δυνατού στο Android. Μιλάω, φυσικά, για την προσθήκη της μαύρης λίστας κρυφών API. Με σκοπό να προωθήσει τη σταθερότητα της εφαρμογής, η Google απέκλεισε την πρόσβαση στα περισσότερα κρυφά API - API που υπάρχουν στο πλαίσιο Android αλλά δεν είναι τεκμηριωμένα στο Android SDK. Αυτά τα API θα μπορούσαν να είναι προσβάσιμα μέσω προβληματισμού μέχρι το Android 9 Pie, και επί του παρόντος, μπορείτε ακόμα να προσπελάσετε χρησιμοποιώντας τη λύση μετα-αντανάκλασης.

Εάν δεν έχετε ιδέα για τι πράγμα μιλάω, μάλλον θα έπρεπε διάβασε το άρθρο που έγραψα πριν από λίγους μήνες για αυτό το θέμα. Θα εξηγήσει όλα όσα πρέπει να ξέρετε για τον μετα-ανακλαστικό και πώς λειτουργεί. Δυστυχώς, φαίνεται ότι η Google έλαβε γνώση αυτής της λύσης (ωχ). Σε μια νέα δέσμευση για το AOSP, η Google εισήγαγε κώδικα για να «σκληρύνει» τους κρυφούς ελέγχους API του Android. Αυτό ουσιαστικά σημαίνει ότι η μετα-ανακλαστικότητα δεν θα λειτουργεί πλέον.

Φυσικά, αυτό δεν θα επηρεάσει όλες τις εφαρμογές. Όπως και με την αρχική μαύρη λίστα API, θα επηρεαστούν μόνο οι εφαρμογές που στοχεύουν Android 11 (επίπεδο API 30) ή μεταγενέστερη έκδοση. Μπορείτε ακόμα να στοχεύσετε το επίπεδο API 29 ή χαμηλότερο και να χρησιμοποιήσετε μετα-αντανάκλαση. Με το Play Store αυξάνοντας σταδιακά τις ελάχιστες απαιτήσεις SDK στόχου, ωστόσο, αυτό δεν θα είναι έγκυρη λύση για πολύ.

Προς το παρόν, δεν γνωρίζω λύσεις για εφαρμογές που στοχεύουν το API 30. Ωστόσο, το Android 11 είναι πολύ μακριά, οπότε υπάρχει μεγάλη πιθανότητα κάποιος να βρει έναν τρόπο να επαναφέρει την πρόσβαση. Εν τω μεταξύ, εάν χρησιμοποιείτε κρυφά API, μπορεί να το θέλετε υποβάλουν αίτημα για δημοσίευσή τους στο Android 11. Εάν είστε καλοί στην ανάλυση της C++ και της Java και θέλετε να "διορθώσετε" αυτή τη μικρή κατάσταση στη μαύρη λίστα, ρίξτε μια ματιά στο σχετικό commit.