2016-08-08 5 views
0

Мне нужно запустить тест безопасности на одном из наших мобильных приложений для Android.Запустить/Создать Android-эмулятор, который не имеет (без) доступа root

  1. Он не должен работать, если устройство укоренено.
  2. Он должен работать как ожидалось на ненагруженных устройствах.

Я тестировал часть 1 без проблем и нашел, что она работает должным образом.

Однако я не могу создать эмулятор с помощью AVD Manager, который не запускается с правами доступа root.

-Удается ли метод командной строки, чтобы уменьшить экземпляр эмулятора до неуправляемого при запуске? -Управление тем, есть ли способ отправки команды оболочки adb (или другого вызова командной строки) для уменьшения разрешений на установленное приложение?

Спасибо!

Редактировать для @Fred. Я открыл оболочку и изменил ее на идентификатор пользователя (uid) тестируемого приложения. Обратите внимание, что на изображении вы можете увидеть команду «adb shell su u0_a53», а затем следующее приглашение включает пользователя «u0_a53 @ generic_x86_64» в качестве возвращенной оболочки и имеет «$», указывающий на доступ без полномочий root. Однако при открытии тестируемого приложения на эмуляторе приложение обнаруживает, что устройство внедрено. Что мне не хватает?

See attached image - click here

ответ

0

Да, есть способ использования SU изменить супер пользователя, не корень, см ответ в этом так вопрос для направлений:

https://android.stackexchange.com/questions/60599/how-to-get-non-root-access-on-emulators

+0

Да, я видел эту ссылку. В упомянутом ответе говорится о выполнении некорневых команд. Это действительно не изменяет сам эмулятор, чтобы он находился в состоянии без привязки. Это не решает мою проблему. Мне не нужно запускать некорневую оболочку. Мне нужен эмулятор для запуска в незагруженном состоянии. Спасибо. –

+0

Шейн, когда вы модифицируете SU, чтобы работать как не укоренившийся, как вы думаете, что это значит? Ни один из этих способов не будет автоматизировать его, но его единственный способ ... в том, что после запуска эмулятора вы выполняете эту последовательность команд SU через командную строку adb, и когда вы запускаете приложение, сам эмулятор находится в состоянии без полномочий root, запуская приложение в корневое состояние. –

+0

Пожалуйста, обратитесь к редактированию, которое я только что сделал по первому вопросу. Я прикрепил экран для печати того, что я наблюдаю. Я «модифицировал» оболочку для использования идентификатора пользователя приложения. Однако, когда я открываю приложение, он все еще обнаруживает, что эмулятор укоренен и выдает сообщение. Что мне здесь не хватает? Я пробовал это, прежде чем я разместил этот вопрос, следовательно, мой предыдущий ответ. Если я сделаю это неправильно, можете ли вы описать, что я должен делать вместо этого? –

0

Как выясняется, на мой вопрос была в корне ошибочной. Окружающая среда, которую я пытаюсь достичь, не может быть создана с помощью эмулятора в рамках проверки безопасности, чтобы проверить, находится ли телефон в режиме «выпуска», в дополнение к поиску присутствия «su». После встречи с несколькими другими командами я решил получить физический телефон для тестирования этого ограничения безопасности.

Смежные вопросы