Какие приложения нельзя сделать для Android

Хоть и заявляется много где, что приложения под Android абсолютно равны, что от независимых разработчиков, что от Google, что от производителей устройств…, используя одни и те же API — все-таки «не все приложения одинаково …» равные.

Существует электронная подпись приложений сертификатами, которые тоже разграничивают доступ к функциям Android (точнее говоря — запрещают некоторый функционал). Существует как минимум 4 категории доступа, т.е. приложения, подписанные системным сертификатом, использующимся для подписи файлов прошивки аппарата (firmware, ROM) — будут с системными правами доступа, которых обычным приложениям из Play (Market) — не видать как своих … хм… пользователей 🙂

Вот список разрешений, которые доступны только приложениям с системными привилегиями в Android, их описание на английском см. в официальной документации:

android.permission.ACCESS_CHECKIN_PROPERTIES
android.permission.ACCESS_SURFACE_FLINGER
android.permission.ACCOUNT_MANAGER
android.permission.BIND_APPWIDGET
android.permission.BIND_DEVICE_ADMIN
android.permission.BIND_INPUT_METHOD
android.permission.BIND_WALLPAPER
android.permission.BRICK
android.permission.BROADCAST_PACKAGE_REMOVED
android.permission.BROADCAST_SMS
android.permission.BROADCAST_WAP_PUSH
android.permission.CALL_PRIVILEGED
android.permission.CHANGE_COMPONENT_ENABLED_STATE
android.permission.CLEAR_APP_USER_DATA
android.permission.CONTROL_LOCATION_UPDATES
android.permission.DELETE_CACHE_FILES
android.permission.DELETE_PACKAGES
android.permission.DEVICE_POWER
android.permission.DIAGNOSTIC
android.permission.FACTORY_TEST
android.permission.FORCE_BACK
android.permission.GLOBAL_SEARCH
android.permission.HARDWARE_TEST
android.permission.INJECT_EVENTS
android.permission.INSTALL_LOCATION_PROVIDER
android.permission.INSTALL_PACKAGES
android.permission.INTERNAL_SYSTEM_WINDOW
android.permission.MANAGE_APP_TOKENS
android.permission.MASTER_CLEAR
android.permission.READ_FRAME_BUFFER
android.permission.READ_INPUT_STATE
android.permission.REBOOT
android.permission.SET_ACTIVITY_WATCHER
android.permission.SET_ORIENTATION
android.permission.SET_PREFERRED_APPLICATIONS
android.permission.SET_TIME
android.permission.STATUS_BAR
android.permission.UPDATE_DEVICE_STATS
android.permission.WRITE_GSERVICES
android.permission.WRITE_SECURE_SETTINGS

Авторство списка, может быть там и есть неточности, но не только перезагрузка аппарата невозможна из обычного приложения (android.permission.REBOOT), да и я сам уже столкнулся с тем, что установка (android.permission.INSTALL_PACKAGES) и удаление других приложений (android.permission.DELETE_PACKAGES) возможны только в системной программе.

Т.е. приложение с допуском к этим функциям — должно быть подписано сертификатом системы (разработчика устройства), и быть в составе прошивки устройства. Как минимум первое условия почти на 100% для обычного пользователя устройств Андроид — невыполнимо. А программа, которая работает только на одном типе устройств, для которых «слеплена» специальная прошивка — по-моему, почти никому не нужна …

Leave a Reply

You must be logged in to post a comment.