В Google Messages есть скрытый API RCS для сторонних приложений.

click fraud protection

Приложение Google Messages имеет скрытый API сообщений Android, который позволяет сторонним приложениям для обмена сообщениями отправлять сообщения RCS.

Обновление 2 (09.07.2021, 16:49 по восточному времени): Мы узнали, что этот RCS API в настоящее время не предназначен для использования сторонними приложениями. Для получения дополнительной информации нажмите здесь.

Предыдущие обновления

Обновление 1 (09.07.2021, 14:53 по восточному времени): Мы обновили статью информацией о том, что API можно найти только в эксклюзивной версии приложения Google Messages, выпущенной Samsung. Для получения дополнительной информации нажмите здесь.

читать далее

RCS, что означает Rich Communication Services, обычно считается преемником SMS. Он поддерживает такие функции, как управление групповым чатом, совместное использование файлов более высокого качества, уведомления о прочтении, индикаторы ввода и сквозное шифрование. Чтобы использовать протокол RCS для чатов, он должен поддерживаться сетью, ОС телефона и приложением обмена сообщениями телефона через API. Американские операторы связи слишком долго медлили с внедрением RCS, поэтому Google полностью их обошёл и добавил собственный сервер RCS в приложение Google Messages. Однако на Android

только Приложение Google Messages может получить доступ к API RCS Android. Ситуация может измениться, если Google откроет свой «API сообщений Android».

Еще в 2019 году мы выучили что Google работает над добавлением RCS API. К сожалению, API были скрыты от разработчиков и могут использоваться только приложениями из скрытого белого списка, в который входит приложение Google Messages. Хотя приложение «Сообщения Google» в последнее время стало намного лучше, оно все еще находится в стадии разработки. обновлен базовыми функциями вы найдете во многих других приложения для обмена текстовыми сообщениями для Android. Проблема с переключением на одно из этих других приложений заключается в том, что вы не сможете отправлять сообщения через RCS, поэтому вы потеряете все функции, о которых мы говорили выше. Однако мы обнаружили доказательства того, что у Google есть неопубликованный «API сообщений Android», который позволяет любому стороннему приложению для обмена текстовыми сообщениями отправлять сообщения SMS/MMS/RCS с помощью сообщений Google.

Разборка APK часто позволяет предсказать функции, которые могут появиться в будущем обновлении приложения, но возможно, что любая из упомянутых здесь функций может не появиться в будущем выпуске. Это связано с тем, что эти функции в настоящее время не реализованы в действующей сборке и могут быть добавлены разработчиками в любое время в будущей сборке.

Когда сегодня Google Сообщения появились в 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. В файле манифеста приложения 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 откроет API RCS платформы Android, потенциально есть одно большое преимущество в том, что Google Messages обрабатывает маршрутизацию сообщений. Это может означать, что все сообщения RCS, отправленные через стороннее приложение для обмена сообщениями, будут использовать службу Google Chat, которая на данный момент является наиболее широко используемой реализацией RCS с тех пор, как ни одна из версий операторов связи сняли.

Мы еще не нашли объявления от Google об этом API сообщений Android, но надеемся вскоре увидеть его открытым. Сторонние приложения для обмена текстовыми сообщениями сейчас находятся в невыгодном положении, поскольку у них нет поддержки RCS, но этот API будет означать, что вы сможете использовать свое любимое приложение для обмена текстовыми сообщениями и пользоваться преимуществами RCS. Конечно, стороннее приложение для обмена текстовыми сообщениями должно будет реализовать новый API, но не похоже, что реализовать его будет слишком сложно.

СообщенияРазработчик: ООО «Гугл»

Цена: Бесплатно.

4.2.

Скачать

Обновление 1: API доступен только в версии приложения Samsung.

Вскоре после публикации этой статьи мы узнали, что строки и записи манифеста для API сообщений Android можно найти только в Приложение Google Сообщения для телефонов Samsung Galaxy. Это то же самое приложение и пакет, но Google Play динамически развертывает эту версию приложения на телефонах Samsung Galaxy. Эти записи были добавлены несколько версий назад, поэтому сам API не кажется новым. Мы не уверены, почему записи отображаются только в версии приложения для телефонов Samsung, но это возможно. Google создал API, чтобы приложение Samsung Messaging могло использовать службу Google Chat без необходимости переключения пользователей Программы. Однако мы не понимаем, почему этот API не может быть открыт для других приложений, и мы также пока не видим в самом приложении Samsung Messages никаких доказательств того, что оно использует этот API. Будем надеяться, что Google откроет API для всех сторонних приложений для обмена сообщениями, включив его в основную версию приложения.


Обновление 2: API ограничен приложениями Samsung.

Углубляемся в приложение Google Сообщения (ч/т 9to5Google), мы обнаружили доказательства того, что использование этого API сообщений Android в настоящее время ограничено некоторыми приложениями Samsung. В частности, похоже, что эта функция предназначена для того, чтобы носимые устройства 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-декомпилятор, инструмент профессионального уровня для обратного проектирования приложений Android.