Το Google Messages διαθέτει ένα κρυφό RCS API για εφαρμογές τρίτων

Η εφαρμογή Google Messages διαθέτει ένα κρυφό API μηνυμάτων Android που θα μπορούσε να επιτρέπει σε εφαρμογές ανταλλαγής μηνυμάτων τρίτων να στέλνουν μηνύματα RCS.

Ενημέρωση 2 (07/09/2021 @ 4:49 PM ET): Μάθαμε ότι αυτό το RCS API δεν προορίζεται προς το παρόν για χρήση από εφαρμογές τρίτων. Κάντε κλικ εδώ για περισσότερες πληροφορίες.

Προηγούμενες ενημερώσεις

Ενημέρωση 1 (07/09/2021 @ 02:53 ET): Ενημερώσαμε το άρθρο με πληροφορίες ότι το API μπορεί να βρεθεί μόνο στην αποκλειστική έκδοση της Samsung της εφαρμογής Google Messages. Κάντε κλικ εδώ για περισσότερες πληροφορίες.

Διαβάστε περισσότερα

Το RCS, το οποίο σημαίνει Rich Communication Services, θεωρείται γενικά ως ο διάδοχος του SMS. Υποστηρίζει λειτουργίες όπως διαχείριση ομαδικής συνομιλίας, κοινή χρήση αρχείων υψηλότερης ποιότητας, αποδείξεις ανάγνωσης, δείκτες πληκτρολόγησης και κρυπτογράφηση από άκρο σε άκρο. Για να χρησιμοποιήσετε το πρωτόκολλο RCS για συνομιλίες, πρέπει να υποστηρίζεται από το δίκτυο, το λειτουργικό σύστημα του τηλεφώνου και την εφαρμογή ανταλλαγής μηνυμάτων του τηλεφώνου μέσω ενός API. Οι αμερικανικές εταιρείες κινητής τηλεφωνίας άργησαν να υιοθετήσουν το RCS, έτσι η Google τους παρέκαμψε εντελώς και πρόσθεσε το δικό τους σύστημα υποστήριξης RCS στην εφαρμογή Google Messages. Ωστόσο, στο Android,

μόνο η εφαρμογή Google Messages μπορεί να έχει πρόσβαση στο RCS API του Android. Αυτό θα μπορούσε να αλλάξει αν η Google ανοίξει το "Android Messages API".

Πίσω στο 2019, μάθαμε ότι η Google εργαζόταν για την προσθήκη ενός API RCS. Δυστυχώς, τα API ήταν κρυφά από τους προγραμματιστές και μπορούν να χρησιμοποιηθούν μόνο από εφαρμογές σε μια κρυφή λίστα επιτρεπόμενων — η οποία περιλαμβάνει την εφαρμογή Google Messages. Αν και η εφαρμογή Google Messages έχει βελτιωθεί πολύ πρόσφατα, εξακολουθεί να είναι ενημερωμένο με βασικές δυνατότητες θα βρεις σε πολλά άλλα Εφαρμογές ανταλλαγής μηνυμάτων κειμένου για Android. Το πρόβλημα με τη μετάβαση σε μία από αυτές τις άλλες εφαρμογές είναι ότι δεν θα μπορείτε να στέλνετε μηνύματα μέσω RCS, επομένως θα χάσετε όλες τις λειτουργίες για τις οποίες μιλήσαμε παραπάνω. Ωστόσο, βρήκαμε στοιχεία ότι η Google διαθέτει ένα μη δημοσιευμένο "Android Messages API" που επιτρέπει σε οποιαδήποτε εφαρμογή ανταλλαγής μηνυμάτων κειμένου τρίτου μέρους να στέλνει μηνύματα SMS/MMS/RCS χρησιμοποιώντας το Google Messages.

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

Όταν το Google Messages κυκλοφόρησε σήμερα στο Google Play, αποκωδικοποιήσαμε το APK και ανακαλύψαμε τις ακόλουθες συμβολοσειρές στους πόρους του:

<stringname="external_messaging_api_description">With this permission the app will be allowed to send SMS/MMS/RCS using Android Messages. It will have an access to send messages without any extra approvals.string>
<stringname="external_messaging_api_label">Permission to send SMS/MMS/RCS messages using Android Messages APIstring>

Αυτές οι συμβολοσειρές περιγράφουν ξεκάθαρα μια άδεια που μπορούν να ζητήσουν οι εφαρμογές ανταλλαγής μηνυμάτων τρίτων για να μπορούν να στέλνουν μηνύματα SMS, MMS ή RCS μέσω της εφαρμογής Google Messages. Στο αρχείο Manifest της εφαρμογής Google Messages, βρήκαμε επίσης την άδεια που θα πρέπει να δηλώνουν οι εφαρμογές ανταλλαγής μηνυμάτων:

<permissionandroid: description="@string/external_messaging_api_description"android: label="@string/external_messaging_api_label"android: name="com.google.android.apps.messaging.EXTERNAL_MESSAGING_API"android: permissionGroup="android.permission-group.SMS"android: protectionLevel="dangerous"/>

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

Ενώ ελπίζαμε να δούμε την Google να ανοίγει το RCS API της πλατφόρμας Android, υπάρχει δυνητικά ένα μεγάλο πλεονέκτημα να διαχειρίζεται το Google Messages τη δρομολόγηση μηνυμάτων. Αυτό θα μπορούσε να σημαίνει ότι όλα τα μηνύματα RCS που αποστέλλονται μέσω μιας εφαρμογής ανταλλαγής μηνυμάτων τρίτου μέρους θα χρησιμοποιούν την υπηρεσία Chat της Google, η οποία είναι μέχρι στιγμής η πιο ευρέως χρησιμοποιούμενη εφαρμογή RCS από τότε καμία από τις εκδόσεις των μεταφορέων έχουν απογειωθεί.

Δεν έχουμε βρει ακόμη ανακοίνωση από την Google σε αυτό το API του Android Messages, αλλά ελπίζουμε να το δούμε να ανοίγει σύντομα. Οι εφαρμογές ανταλλαγής μηνυμάτων κειμένου τρίτων βρίσκονται σε μειονεκτική θέση αυτή τη στιγμή, καθώς δεν διαθέτουν υποστήριξη RCS, αλλά αυτό το API θα σημαίνει ότι μπορείτε να χρησιμοποιήσετε την αγαπημένη σας εφαρμογή ανταλλαγής μηνυμάτων κειμένου και να απολαύσετε τα πλεονεκτήματα του RCS. Φυσικά, η εφαρμογή ανταλλαγής μηνυμάτων κειμένου τρίτου μέρους θα πρέπει να εφαρμόσει πραγματικά το νέο API, αλλά δεν φαίνεται ότι θα είναι πολύ δύσκολο να εφαρμοστεί.

ΜηνύματαΠρογραμματιστής: Google LLC

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

4.2.

Κατεβάστε

Ενημέρωση 1: Το API βρίσκεται μόνο στην έκδοση Samsung της εφαρμογής

Λίγο μετά τη δημοσίευση αυτού του άρθρου, μάθαμε ότι οι συμβολοσειρές και η καταχώρηση Manifest για το Android Messages API μπορούν να βρεθούν μόνο στο Εφαρμογή Google Messages για τηλέφωνα Samsung Galaxy. Είναι το ίδιο όνομα εφαρμογής και πακέτου, αλλά το Google Play διαθέτει δυναμικά αυτήν την έκδοση της εφαρμογής στα τηλέφωνα Samsung Galaxy. Αυτές οι καταχωρήσεις προστέθηκαν πριν από πολλές εκδόσεις, επομένως το ίδιο το API δεν φαίνεται να είναι νέο. Δεν είμαστε σίγουροι γιατί οι καταχωρήσεις εμφανίζονται μόνο στην έκδοση της εφαρμογής για τηλέφωνα Samsung, αλλά είναι πιθανό Η Google δημιούργησε το API ώστε η εφαρμογή Μηνυμάτων της Samsung να χρησιμοποιεί την υπηρεσία Chat της Google χωρίς να χρειάζεται να αλλάξουν οι χρήστες εφαρμογές. Ωστόσο, δεν καταλαβαίνουμε γιατί αυτό το API δεν μπορεί να ανοίξει σε άλλες εφαρμογές και, επίσης, δεν βλέπουμε ακόμη κανένα στοιχείο στην ίδια την εφαρμογή Samsung Messages ότι χρησιμοποιεί αυτό το API. Ας ελπίσουμε ότι η Google ανοίγει το API σε όλες τις εφαρμογές ανταλλαγής μηνυμάτων τρίτων, συμπεριλαμβάνοντάς το στην κύρια έκδοση της εφαρμογής.


Ενημέρωση 2: Το API περιορίζεται σε εφαρμογές Samsung

Ανατρέξτε σε βάθος στην εφαρμογή Google Messages (h/t 9to5Google), βρήκαμε στοιχεία που αποδεικνύουν ότι αυτό το API Android Messages είναι προς το παρόν περιορισμένο για χρήση από επιλεγμένες εφαρμογές της Samsung. Συγκεκριμένα, φαίνεται ότι αυτή η λειτουργία στοχεύει στο να επιτρέψει στα φορητά και συνδεδεμένα tablet της Samsung να στέλνουν μηνύματα SMS, MMS και RCS μέσω του Google Messages. Αυτό είναι μέρος της δυνατότητας Συνέχειας κλήσεων και μηνυμάτων της Samsung.

Η τρέχουσα λίστα επιτρεπόμενων περιλαμβάνει το πακέτο για Συνέχεια Κλήσης & Μηνυμάτων, π.χ. "com.samsung.android.mdecservice", μεταξύ άλλων εφαρμογών. Ο κωδικός ελέγχει το όνομα του πακέτου και την υπογραφή της αιτούσας εφαρμογής πριν παραχωρήσει πρόσβαση στο API. Μια σημαία επιτρέπει σε οποιαδήποτε εφαρμογή να έχει πρόσβαση στο API, αλλά αυτή η τιμή προορίζεται σαφώς να μην χρησιμοποιηθεί δημόσια. (Η σημαία ονομάζεται εύστοχα "allow_any_app_to_connect_do_not_use_in_public_builds".)

Ευχαριστούμε το PNF Software που μας παρείχε άδεια χρήσης JEB Decompiler, ένα εργαλείο αντίστροφης μηχανικής επαγγελματικής ποιότητας για εφαρμογές Android.