Запуск приложения Android Automotive только для системного пользователя (пользователь 0)Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Запуск приложения Android Automotive только для системного пользователя (пользователь 0)

Сообщение Anonymous »

Я создаю системное приложение для Android Automotive, которое не включает в себя какой-либо пользовательский интерфейс.
Эта служба действует как локальная серверная часть/прокси-сервер на устройстве. ожидание запросов от других приложений, выполнение желаемого действия и возврат необходимых данных в качестве ответа.
Взаимодействие между службой и другими приложениями должно осуществляться с помощью AIDL.
Два вопроса:
  • Поскольку в нашей системе знают несколько пользователей, создаются два процесса, по одному для каждого пользователя — пользователя системы ( пользователь №0) и обычный пользователь (пользователь №12). Есть ли способ уведомить систему о создании процесса только для пользователя системы? Я пытался пометить получателя как singleUser=true, но это не помогло, для каждого пользователя по-прежнему создаются два процесса.
  • Другой подход, который я использовал, заключался в идентификации на приемнике завершенной загрузки, какой пользователь в данный момент работает, и в этом случае обычный пользователь отключил приложение с помощью PackageManager.setApplicationEnabledSetting(), как предложил здесь Google. Проблема в том, что когда другое приложение пытается связаться с помощью службы AIDL, я получаю следующую ошибку. Стоит отметить, что каждая служба отмечена android:exported="true" и android:singleUser="true". Насколько я знаю, отметка службы как SingleUser=true должна перенаправлять все вызовы в службу, работающую у системного пользователя.
    Я что-то упустил в текущей реализации?
ActivityManager: невозможно запустить службу. Намерение {
act=com.companyName.appName.services.serviceName
pkg= com.companyName.appName } U=12: не найден


Подробнее здесь: https://stackoverflow.com/questions/766 ... ser-0-only
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»