Я создаю приложение для Android, и одно из необходимых мне разрешений определяется как:
android:protectionLevel="signature|system|development"
Как получить уровень защиты подписи? Мне нужно каким-то образом подписать свое приложение?
Нужно ли подписывать его с OEM? (Samsung\HTC\LG)?
signature
означает, что для доступа к ресурсу ваше приложение должно быть подписано с тем же сертификатом, что и обладатель разрешения. Если это не ваше приложение, к которому вы пытаетесь подключиться, тогда вам в основном не повезло. Если эта система одна, вам еще не повезло, Это описано здесь:
"подпись"
Разрешение, предоставляемое системой, только если запрашивающее приложение подписывается с тем же сертификатом, что и приложение, которое объявило о разрешении. Если сертификаты совпадают, система автоматически предоставляет разрешение без уведомления пользователь или запрашивает явное одобрение пользователя.
ИЗМЕНИТЬ
Я пытаюсь прочитать файл logcat через мое приложение. это требует разрешение android.permission.READ_LOGS
Вы не можете получить доступ к журналам на складе, которые не созданы вашим приложением. Это было введено по соображениям безопасности, поэтому было бы бессмысленно позволять вам получать его только потому, что вам это нужно. Если вы создадите собственное ПЗУ, вы можете его получить, но тогда вы должны это знать уже.