Категория > Новости > Android: цензура Xiaomi и сброс разрешений для всех - «Новости»
Android: цензура Xiaomi и сброс разрешений для всех - «Новости»29-09-2021, 00:00. Автор: Ипполит |
Xiaomi’s secret blacklist of phrases sounds scary, but it may not be what it seems — статья с расследованием ситуации с цензурой в телефонах Xiaomi. Напомним, что в сентябре минобороны Литвы опубликовало исследование, согласно которому смартфоны китайских компаний Xiaomi и Huawei не просто собирают информацию о пользователе, но и выполняют цензуру: исследование показало, что смартфоны Xiaomi, продаваемые на территории ЕС, включают в себя деактивированную, но тем не менее рабочую систему блокировки определенных слов и словосочетаний. Но есть в этом исследовании странные детали. Его авторы говорят, что запретные слова содержатся в файле с именем Можно, конечно, подумать, что китайцы очень умело маскируют свои действия, но гораздо больше это похоже на список слов для блокировки неугодной рекламы. Об этом говорят как сам список слов и фраз, так и имя файла и объектов, содержащих слово Ad. А нужно это просто для того, чтобы встроенные в смартфоны Xiaomi приложения не показывали adult и прочую нерелевантную рекламу (для тех, кто не использует китайские телефоны — да, Xiaomi вполне официально показывает рекламу на своих телефонах). Так что вся эта история про цензуру — скорее всего, тыква, но да, другая часть расследования, посвященная сбору информации о телефонах и пользователях, вполне правдива. Фрагмент кода, якобы выполняющего цензуру РазработчикуАвтоматический сброс разрешенийMaking permissions auto-reset available to billions more devices — статья разработчиков Android о системе сброса разрешений. Напомним, что сброс разрешений — это одна из функций Android 11. Если приложение долго не используется, система отзывает все выданные ему разрешения. Теперь, за счет встраивания функции в Google Play Services, эта система будет распространена на все устройства, начиная с Android 11. Система начнет работать в декабре‑январе 2021 года. Все разработчики, которые не хотят, чтобы работа системы распространялась на их приложения, могут использовать специальный API, чтобы попросить пользователей отключить сброс разрешений:
// Проверяем, поддерживает ли устройство сброс разрешений
// Результат будет возвращен в колбеке onResult
val future = PackageManagerCompat.getUnusedAppRestrictionsStatus(context)
future.addListener(
{ onResult(future.get()) },
ContextCompat.getMainExecutor(context)
)
fun onResult(appRestrictionsStatus: Int) {
when (appRestrictionsStatus) {
ERROR -> { }
FEATURE_NOT_AVAILABLE -> { }
DISABLED -> { }
API_30_BACKPORT, API_30, API_31 ->
handleRestrictions(appRestrictionsStatus)
}
}
// Этот код будет выполнен только в Android 11
// и устройствах, поддерживающий автосброс разрешений
fun handleRestrictions(appRestrictionsStatus: Int) {
Intent intent = IntentCompat.createManageUnusedAppRestrictionsIntent(context, packageName)
startActivityForResult(intent, REQUEST_CODE)
}
Перейти обратно к новости |