Не срабатывает команда "setprop microvirt.linenum '+7хххххххххх'"

Mitnik

Client
Регистрация
22.12.2014
Сообщения
118
Благодарностей
6
Баллы
18
Подскажите, пожалуйста, почему может не срабатывать консольная команда типа - setprop microvirt.linenum '+7хххххххххх'?
В логе пишет - Выполнение команды adb shell Результат: ok, но, данные в ВМ не меняются.
Команды getprop, тоже, почему-то, не срабатывают.
ROOT включен.

Не могу понять, в чем может быть проблема.
 

Anatoly79

Moderator
Регистрация
17.04.2020
Сообщения
378
Благодарностей
269
Баллы
63
  • Спасибо
Реакции: Mitnik

Mitnik

Client
Регистрация
22.12.2014
Сообщения
118
Благодарностей
6
Баллы
18
В каком приложении не меняется номер после выполнения этой команды?
Не меняется в настройках самого эмулятора.

Причем, команда setprop linenum '+7хххххххххх' проходит, и я даже могу взять после этого прописанное значение командой getprop linenum '+7хххххххххх'

Но, значение прописывается непонятно куда, т.к. командой getconfigex -i 31 linenum берется совершенно другое значение, которое реально существует и отображается в эмуляторе, и было ДО команды: setprop linenum '+7хххххххххх'.

Задача состоит в том, чтобы задать через команды setprop <key> 'значение' несколько параметров, которых нет в ProjectMaker.
И какие-то из них проходят, а какие-то нет.
Вот я и пытаюсь понять, почему они могут не срабатывать.
 
Последнее редактирование:

Anatoly79

Moderator
Регистрация
17.04.2020
Сообщения
378
Благодарностей
269
Баллы
63
getconfigex linenum считывает GuestProperty виртуальной машины VirtualBox. (linenum это абстрактный параметр, не имеющий никакого отношения к Андроид)

setprop microvirt.linenum задает свойство внутри эмулятора. На это свойство реагирует systemd и формирует вполне конкретные настройки для фреймворка, чтобы приложения думали, что у эмулятора есть номер телефона. После применения этой команды можно открыть любое приложение, где отображается номер телефона и убедиться, что номер поменялся. Но GuestProperty в VirtualBox не изменится, после перезагрузки номер останется старым.

По большей части setconfigex только задает параметры виртуалки. В момент запуска параметр считывается и применяется (касательно телефона, грубо говоря выполняется setprop microvirt.linenum, на самом деле обычно намного больше команд). Часть параметров применяется на лету при запущенной ВМ, часть применяется только после запуска

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

Mitnik

Client
Регистрация
22.12.2014
Сообщения
118
Благодарностей
6
Баллы
18
getconfigex linenum считывает GuestProperty виртуальной машины VirtualBox. (linenum это абстрактный параметр, не имеющий никакого отношения к Андроид)

setprop microvirt.linenum задает свойство внутри эмулятора. На это свойство реагирует systemd и формирует вполне конкретные настройки для фреймворка, чтобы приложения думали, что у эмулятора есть номер телефона. После применения этой команды можно открыть любое приложение, где отображается номер телефона и убедиться, что номер поменялся. Но GuestProperty в VirtualBox не изменится, после перезагрузки номер останется старым.

По большей части setconfigex только задает параметры виртуалки. В момент запуска параметр считывается и применяется (касательно телефона, грубо говоря выполняется setprop microvirt.linenum, на самом деле обычно намного больше команд). Часть параметров применяется на лету при запущенной ВМ, часть применяется только после запуска

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

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)