Насколько близко мы можем программно добраться до аппаратного обеспечения устройства Android?

1

камера моего мобильного телефона (работает Eclair-update1) остается невосприимчивой в 90% случаев, поэтому я сначала принял аппаратный дефект. После взлома кеша и данных пользовательских данных телефона, они снова работали. По крайней мере на время. Теперь он снова не работал.

Просматривая сеть, я нашел довольно некоторых пользователей, которые сталкиваются с одной и той же проблемой и с трудом успели вырвать свои пользовательские данные с устройства.

Итак, мой вопрос: насколько близко я могу добраться до аппаратного обеспечения с помощью SDK? Я бы хотел написать приложение, чтобы повлиять на состояние оборудования (например, повторная инициализация камеры, повторная установка SDcard aso.), Но я бы предпочел сделать это - если возможно - с SDK вместо NDK.

Спасибо заранее!
S.

Теги:
sdk
hardware

2 ответа

0
Лучший ответ

Это не вопрос sdk vs. ndk, а базовые разрешения на уровне операционной системы, препятствующие обычным (послепродажное и антивирусное программное обеспечение) приложениям Android в целом делать необработанный доступ к аппаратным средствам.

  • 0
    Так что это означает, что просто невозможно пройти через Java VM? Я предполагаю, что укоренившееся устройство должно дать больше шансов.
  • 0
    Проникновение в java vm не представляет никакой проблемы (кроме того, что нативные библиотеки, с которыми вы будете разговаривать, нестабильны и могут меняться между версиями Android), но, не будучи суперпользователем, это дает вам относительно небольшие возможности, которых у вас не было от java - это механизм безопасности пользователя linux, который ограничивает вас, а не "java" (фактически dalvik) vm. В качестве пользователя root вы можете получить прямой доступ к файлам устройства, (возможно) изменить ядро, загрузить новые драйверы, что угодно.
Показать ещё 1 комментарий
0
  • Загрузите Android SDK на свой компьютер.
  • Загрузочное устройство для восстановления
  • Подключите USB-кабель к ПК
  • Запустите adb shell, затем
  • umount /data
  • umount /system
  • e2fsck -fv /dev/block/stl9
  • e2fsck -fv /dev/block/stl10

Взято из forum.xda-developers.com/showthread.php?t=1396366

Ещё вопросы

Сообщество Overcoder
Наверх
Меню