Отправить запросы RIL для Android

Я хотел бы знать, как отправлять запросы на RIL на Android, эти запросы перечислены в ril.h, например, следует некоторый макрос для запросов:

RIL_REQUEST_GET_SIM_STATUS
RIL_REQUEST_ENTER_SIM_PIN
RIL_REQUEST_ENTER_SIM_PUK
RIL_REQUEST_DIAL
...

Я хотел бы отправить эти запросы из C или C ++.

1

Решение

Извините за задержку с ответом. Я увидел твой вопрос и подумал, что смогу ответить, чтобы кто-то нашел его полезным.

Как вы сказали, в ril.h перечислено много запросов. Эти запросы предназначены для связи между RILJ (часть Android-телефонии Android) и RILD (нативная библиотека RIL, предоставляемая OEM-производителями чипсетов, такими как Qualcomm, Broadcom, ST Ericcson, Intel Mobile Comm). Как только RILD получает эти запросы, они далее передаются модему через AT-команды, IPC или механизм QMI.

Если вы создаете стороннее приложение, вы не можете напрямую вызывать запросы в ril.h. Любые API, которые используются в вашем приложении, например, запрос DIAL, преобразуются в RIL_REQUEST_DIAL и отправляются в собственную библиотеку RIL. Обратите внимание, что вы не вызываете эти запросы напрямую; Вы используете API телефонии, которые могут использовать запросы ril.h.

Однако, если вы создаете свое приложение как часть сборки системы, вы можете сделать его системным приложением, используя тот же sharedID, что и телефонный процесс, и импортировав telephony.jar в свой файл mk. Таким образом, вы можете попытаться вызывать запросы непосредственно из объекта телефона вместо использования API-интерфейсов телефонии, предоставляемых Google.

2

Другие решения


По вопросам рекламы [email protected]