Rakendusel Google Messages on peidetud Android Messages API, mis võimaldab kolmandate osapoolte sõnumsiderakendustel saata RCS-sõnumeid.
Värskendus 2 (09.07.2021 kell 16:49 ET): Saime teada, et see RCS API ei ole praegu mõeldud kasutamiseks kolmandate osapoolte rakendustele. Lisateabe saamiseks klõpsake siin.
Eelmised uuendused
Värskendus 1 (07/09/2021 kell 14:53 ET): Värskendasime artiklit teabega, et API on saadaval ainult rakenduse Google Messages Samsungi eksklusiivses versioonis. Lisateabe saamiseks klõpsake siin.
Loe rohkem
RCS-i, mis tähendab Rich Communication Services, peetakse üldiselt SMS-i järglaseks. See toetab selliseid funktsioone nagu grupivestluse haldamine, kvaliteetsemad failijagamised, lugemiskviitungid, tippimisnäidikud ja täielik krüptimine. RCS-protokolli kasutamiseks vestlustes peavad seda API kaudu toetama võrk, telefoni OS ja telefoni sõnumsiderakendus. Ameerika operaatorid venitasid RCS-i kasutuselevõtuga liiga kaua, nii et Google läks neist täielikult mööda ja lisas rakendusse Google Messages oma RCS-i taustaprogrammi. Androidis aga
ainult rakendus Google Messages pääseb juurde Androidi RCS API-le. See võib muutuda, kui Google avab oma Android Messages API.Tagasi aastal 2019, me õppisime et Google töötas RCS API lisamise kallal. Kahjuks olid API-d arendajate eest peidetud ja neid saavad kasutada ainult peidetud lubade loendis olevad rakendused, mis hõlmavad rakendust Google Messages. Kuigi rakendus Google Messages on viimasel ajal palju paremaks muutunud, on see endiselt olemas värskendatud põhifunktsioonidega leiate paljudest teistest Androidi tekstisõnumirakendused. Ühele teisele rakendusele ülemineku probleem seisneb selles, et te ei saa RCS-i kaudu sõnumeid saata, seega kaotate kõik funktsioonid, millest eespool rääkisime. Siiski leidsime tõendeid selle kohta, et Google'il on avaldamata "Android Messages API", mis võimaldab mis tahes kolmanda osapoole tekstsõnumirakendusel saata SMS-/MMS-/RCS-sõnumeid, kasutades Google Messages.
APK eemaldamine võib sageli ennustada funktsioone, mis võivad rakenduse tulevases värskenduses ilmuda, kuid on võimalik, et mõni siin mainitud funktsioon ei pruugi seda tulevases versioonis kasutada. Selle põhjuseks on asjaolu, et neid funktsioone pole praegu reaalajas järgus rakendatud ja arendajad võivad neid tulevases järgus igal ajal kasutada.
Kui Google Messages täna Google Plays välja tuli, dekodeerisime APK ja avastasime selle ressurssidest järgmised stringid.
<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>
Need stringid kirjeldavad selgelt luba, mida kolmanda osapoole sõnumsiderakendused saavad taotleda SMS-, MMS- või RCS-sõnumite saatmiseks rakenduse Google Messages kaudu. Samuti leidsime rakenduse Google Messages manifesti failist loa, mille sõnumsiderakendused peavad deklareerima:
<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"/>
Loa tüüp on loetletud kui "ohtlik", mis tähendab, et seda ei anta taotlevale rakendusele ilma kasutajale kinnitust kuvamata. Sellele viitavad ka ülaltoodud stringid, mis väidavad, et rakendus, millel on luba, võib "saata sõnumeid ilma Lisa heakskiidud", mis tähendab, et heakskiit tuleb esialgu anda. Luba on rühmitatud SMS-kategooria alla, mis on loogiline, kuna see on mõeldud kasutamiseks ainult sõnumsiderakenduste jaoks.
Kuigi me lootsime, et Google avab Androidi platvormi RCS API, on sellel, et Google Messages käsitleb sõnumite marsruutimist, üks suur eelis. See võib tähendada, et kõik kolmanda osapoole sõnumsiderakenduse kaudu saadetud RCS-sõnumid kasutavad Google'i vestlusteenust, mis on seni kõige laialdasemalt kasutatav RCS-i rakendus alates ajast. mitte ükski vedaja versioon on õhku tõusnud.
Me ei ole veel leidnud Google'i teadet selle Android Messages API kohta, kuid loodame, et see avatakse peagi. Kolmandate osapoolte tekstsõnumirakendused on praegu ebasoodsamas olukorras, kuna neil puudub RCS-i tugi, kuid see API tähendab, et saate kasutada oma lemmiktekstisõnumirakendust ja nautida RCS-i eeliseid. Muidugi peab kolmanda osapoole tekstsõnumirakendus uue API-t tegelikult juurutama, kuid tundub, et selle rakendamine ei ole liiga keeruline.
Hind: tasuta.
4.2.
Värskendus 1: API leidub ainult rakenduse Samsungi versioonis
Vahetult pärast selle artikli avaldamist saime teada, et Android Messages API stringid ja manifesti kirjed leiate ainult Rakendus Google Messages Samsung Galaxy telefonidele. See on sama rakendus ja paketi nimi, kuid Google Play avaldab selle rakenduse versiooni dünaamiliselt Samsung Galaxy telefonidele. Need kirjed lisati mitu versiooni tagasi, nii et API ise ei tundu olevat uus. Me pole kindlad, miks kirjed kuvatakse ainult Samsungi telefonidele mõeldud rakenduse versioonis, kuid see on võimalik Google tegi API nii, et Samsungi sõnumsiderakendus saaks kasutada Google'i vestlusteenust ilma, et kasutajad peaksid vahetama rakendusi. Kuid me ei mõista, miks seda API-t ei saa teistele rakendustele avada, ja me ei näe ka Samsung Messagesi rakenduses endas veel tõendeid selle kohta, et see seda API-d kasutab. Loodetavasti avab Google API kõigile kolmandate osapoolte sõnumsiderakendustele, lisades selle rakenduse põhiversiooni.
Värskendus 2: API on piiratud Samsungi rakendustega
Süvenemine rakendusse Google Messages (h/t 9to5Google), leidsime tõendeid selle kohta, et see Android Messages API on praegu piiratud Samsungi valitud rakenduste jaoks. Täpsemalt näib, et selle funktsiooni eesmärk on lubada Samsungi kantavatel seadmetel ja ühendatud tahvelarvutitel saata SMS-i, MMS-i ja RCS-sõnumeid Google'i sõnumite kaudu. See on osa Samsungi kõnede ja sõnumite järjepidevuse funktsioonist.
Praegune lubade loend sisaldab kõnede ja sõnumite järjepidevuse paketti, st. "com.samsung.android.mdecservice" muude rakenduste hulgas. Kood kontrollib enne API-le juurdepääsu andmist taotleva rakenduse paketi nime ja allkirja. Lipp võimaldab igal rakendusel API-le juurde pääseda, kuid see väärtus on selgelt ette nähtud mitte avalikuks kasutamiseks. (Lipu nimi on tabav "allow_any_app_to_connect_do_not_use_in_public_builds".)
Täname PNF tarkvara, et andis meile kasutuslitsentsi JEB dekompiler, professionaalse kvaliteediga pöördprojekteerimise tööriist Androidi rakenduste jaoks.