Zprávy Google mají skryté RCS API pro aplikace třetích stran

Aplikace Zprávy Google má skryté rozhraní Android Messages API, které umožňuje aplikacím pro zasílání zpráv třetích stran odesílat zprávy RCS.

Aktualizace 2 (7. 9. 2021, 16:49 ET): Zjistili jsme, že toto RCS API není v současné době určeno pro použití aplikacemi třetích stran. Pro více informací klikněte sem.

Předchozí aktualizace

Aktualizace 1 (7. 9. 2021, 14:53 ET): Článek jsme aktualizovali o informaci, že API lze nalézt pouze v exkluzivní verzi aplikace Zprávy Google pro Samsung. Pro více informací klikněte sem.

Přečtěte si více

RCS, což je zkratka pro Rich Communication Services, je obecně považováno za nástupce SMS. Podporuje funkce, jako je správa skupinového chatu, kvalitnější sdílení souborů, potvrzení o přečtení, indikátory psaní a šifrování typu end-to-end. Aby bylo možné používat protokol RCS pro chaty, musí být podporován sítí, operačním systémem telefonu a aplikací pro zasílání zpráv v telefonu prostřednictvím rozhraní API. Američtí dopravci se příliš dlouho přetahovali s přijetím RCS, takže je Google úplně obešel a přidal vlastní backend RCS do aplikace Zprávy Google. V systému Android však

pouze aplikace Zprávy Google má přístup k rozhraní Android RCS API. To by se mohlo změnit, pokud Google otevře své „Android Messages API“.

V roce 2019, naučili jsme se že Google pracuje na přidání RCS API. Je smutné, že rozhraní API byla před vývojáři skryta a mohou je používat pouze aplikace na skrytém seznamu povolených – který zahrnuje aplikaci Zprávy Google. I když se aplikace Zprávy Google v poslední době výrazně zlepšila, stále je aktualizován o základní funkce najdete v mnoha dalších aplikace pro textové zprávy pro Android. Problém s přechodem na jednu z těchto aplikací je ten, že nebudete moci posílat zprávy přes RCS, takže přijdete o všechny funkce, o kterých jsme mluvili výše. Našli jsme však důkazy, že Google má nezveřejněné „Android Messages API“, které umožňuje libovolné aplikaci pro zasílání textových zpráv třetí strany odesílat zprávy SMS/MMS/RCS pomocí Zpráv Google.

Zrušení souboru APK může často předvídat funkce, které se mohou objevit v budoucí aktualizaci aplikace, ale je možné, že některá z funkcí, které zde zmiňujeme, se v budoucím vydání nemusí objevit. Je to proto, že tyto funkce nejsou v současné době v živém sestavení implementovány a vývojáři je mohou kdykoli stáhnout v budoucím sestavení.

Když byly Zprávy Google dnes uvedeny na Google Play, dekódovali jsme soubor APK a v jeho zdrojích jsme objevili následující řetězce:

<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>

Tyto řetězce jasně popisují oprávnění, které mohou aplikace pro zasílání zpráv třetích stran požadovat, aby mohly odesílat zprávy SMS, MMS nebo RCS prostřednictvím aplikace Zprávy Google. V souboru Manifest aplikace Zprávy Google jsme také našli oprávnění, která budou muset aplikace pro zasílání zpráv deklarovat:

<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"/>

Typ oprávnění je uveden jako „nebezpečný“, což znamená, že nebude uděleno žádající aplikaci, aniž by se uživateli zobrazilo potvrzení. To je také naznačeno v řetězcích vložených výše, které uvádějí, že aplikace, která má oprávnění, může „posílat zprávy bez jakéhokoli další schválení“, což znamená, že nejprve musí být udělen souhlas. Oprávnění je seskupeno do kategorie SMS, což dává smysl, protože je určeno pouze pro aplikace pro zasílání zpráv.

I když jsme doufali, že Google otevře RCS API platformy Android, existuje potenciálně jedna velká výhoda, když Google Messages zpracovává směrování zpráv. To by mohlo znamenat, že všechny zprávy RCS odeslané prostřednictvím aplikace pro zasílání zpráv třetí strany budou využívat službu Google Chat, která je zatím nejrozšířenější implementací RCS od r. žádná z verzí dopravce vzlétli.

Oznámení od Googlu ohledně tohoto rozhraní Android Messages API jsme zatím nenašli, ale doufáme, že se brzy otevře. Aplikace třetích stran pro zasílání textových zpráv jsou nyní v nevýhodě, protože jim chybí podpora RCS, ale toto API bude znamenat, že můžete používat svou oblíbenou aplikaci pro textové zprávy a využívat výhod RCS. Aplikace třetí strany pro zasílání textových zpráv bude samozřejmě muset implementovat nové API, ale nezdá se, že by to bylo příliš obtížné implementovat.

ZprávyVývojář: Google LLC

Cena: Zdarma.

4.2.

Stažení

Aktualizace 1: API se nachází pouze ve verzi aplikace Samsung

Krátce poté, co jsme publikovali tento článek, jsme se dozvěděli, že řetězce a záznam Manifest pro Android Messages API lze nalézt pouze v Aplikace Zprávy Google pro telefony Samsung Galaxy. Je to stejná aplikace a název balíčku, ale Google Play dynamicky zavádí tuto verzi aplikace do telefonů Samsung Galaxy. Tyto položky byly přidány před několika verzemi, takže samotné API se nezdá být nové. Nejsme si jisti, proč se záznamy zobrazují pouze ve verzi aplikace pro telefony Samsung, ale je to možné Google vytvořil API, aby aplikace Samsung Messaging mohla používat službu Google Chat, aniž by uživatelé museli přepínat aplikace. Nevidíme však, proč nelze toto API otevřít pro jiné aplikace, a také v samotné aplikaci Samsung Messages zatím nevidíme žádný důkaz, že toto API používá. Doufejme, že Google zpřístupní API všem aplikacím pro zasílání zpráv třetích stran tím, že je zahrne do hlavní verze aplikace.


Aktualizace 2: API omezeno na aplikace Samsung

Ponoření se hlouběji do aplikace Zprávy Google (h/t 9to5Google), našli jsme důkazy, že použití tohoto rozhraní Android Messages API je aktuálně omezeno na vybrané aplikace Samsung. Konkrétně se zdá, že tato funkce je zaměřena na to, aby nositelná zařízení Samsung a připojené tablety mohly odesílat zprávy SMS, MMS a RCS prostřednictvím zpráv Google. Toto je součást funkce kontinuity hovorů a zpráv společnosti Samsung.

Aktuální seznam povolených obsahuje balíček pro Call & Message Continuity, tzn. "com.samsung.android.mdecservice", mimo jiné aplikace. Před udělením přístupu k rozhraní API kód ​​zkontroluje název balíčku a podpis žádající aplikace. Příznak umožňuje libovolné aplikaci přístup k rozhraní API, ale tato hodnota je zjevně určena k tomu, aby se nepoužívala veřejně. (Příznak má výstižný název „allow_any_app_to_connect_do_not_use_in_public_builds“.)

Děkujeme společnosti PNF Software za poskytnutí licence k použití JEB dekompilátor, profesionální nástroj zpětného inženýrství pro aplikace Android.