Intentservice имеет UID 1000 из одной учетной записи Android, но другой UID для другой учетной записи пользователя

Я создал intentservice, который подписан системными сертификатами, чтобы он мог иметь системные привилегии и работать как система. Я положил его в каталог /system/app. Когда оно вызывается моим приложением, запущенным под учетной записью "Владелец" на Android 4.4.2, оно имеет идентификатор 1000:

I / ActivityManager (3223): Запустить proc com.abc.dbintentservice для службы com.abc.dbintentservice/.DbIntentService: pid=4515 uid=1000 gids={41000, 1028, 1015, 1023, 3002, 3001, 3003}

и у него нет проблем с открытием файла sqlite с владельцем системы.

Я создал дополнительный профиль пользователя и установил то же приложение, которое вызывает intentservice, и я получил другой uid

I / ActivityManager (3227): Запустить proc com.abc.dbintentservice для службы com.abc.dbintentservice/.DbIntentService: pid=5161 uid=1001000 gids={41000, 1028, 1015, 1023, 3002, 3001, 3003}

и у intentservice есть uid, который не может открыть файл sqlite.

Любое понимание приветствуется.

0 ответов

Другие вопросы по тегам