На многих устройствах Android вы можете войти в секретное меню настроек из приложения "Телефон" , набрав
* # * # 4636 # * # *
http://technology-headlines.com/2010/09/17/4636-android-secret-codes/
Существуют и другие коды.
Можно ли также программно открыть этот материал?
Я пробовал это:
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:*#*#4636#*#*"));
startActivity(intent);
Но он просто пытается инициировать телефонный звонок и, конечно, терпит неудачу, зависает и закрывает приложение "Телефон" .
EDIT: телефон * # * # 4636 # * # * будет сохранен в моем списке контактов как "Неизвестный", но вызов просто не удался. Фактически секретный код работает только при вводе вручную на кнопках в приложении "Телефон" , не нажимая "Вызов" в конце. Возможно, это просто скрытая функция приложения "Телефон" , которая не имеет никакого отношения к вызову? Если это так, можно было бы открыть приложение "Телефон" программно и смоделировать ввод текста на кнопках.
Согласно этому сообщению Программно нажмите кнопку в действии другого приложения
это НЕ должно быть возможным, потому что, если какое-либо приложение на некорневом телефоне может запускать другие приложения и нажимать что-то там, оно может взять под контроль все устройство и делать плохие вещи.
Вот несколько подробностей, но я думаю, что пост немного стар, и даже если он сработает, он может быть изменен в текущих версиях Android: http://mylifewithandroid.blogspot.de/2009/01/generating-keypresses-programmatically.html
Итак, не проще ли вводить секретный код?