Так что мне нужно заставить телефон андроид многократно регистрироваться / отменять регистрацию. Я выполняю это с помощью AT-команд, когда телефон находится в режиме модема / подключения через последовательное соединение USB. Я проверяю текущее состояние регистрации через + CGREG и затем, предполагая, что оно зарегистрировано, я убиваю RF с помощью + CFUN, проверяю снова, затем снова включаю RF и позволяю телефону искать и перерегистрировать себя в обычном режиме. Я запускаю команду + CGREG каждые несколько секунд, чтобы проверить состояние, и после ее повторной регистрации я повторяю.
Теперь иногда я делаю это один или два раза, иногда это происходит пять раз, а затем телефон решает перезагрузить себя ... это немного расстраивает и не дает желаемого результата.
У кого-нибудь есть идеи, почему телефон перезагрузится без команды из-за того, что я здесь делаю? Телефон будет работать нормально любое количество часов, пока я не запускаю эти тесты.
Psudo-процесс:
в то время (правда)
AT + CGREG? // начальное состояние <обычно регистрируется>
AT + CFUN = 4,0 // отключить RF
AT + CGREG? // проверяем, что он не зарегистрирован
AT + CFUN = 1,0 // включить RF обратно
while ()
AT + CGREG? // проверка состояния регистрации каждые 2 секунды
конец
конец
На заметку: + COPS - лучший вариант, однако телефон не [полностью] поддерживает его. Телефон HTC Thunderbolt.