La fonte di questo menù si possono trovare all'interno dell'applicazione Impostazioni nella https://android.googlesource.com/platform/packages/apps/Settings
Se si guarda nel logcat, vedrete tht entrare che i risultati di codice USSD nel lancio di un intento:
l'attività di inizio: Intento {atto = android.intent.action.MAIN FLG = 0x10000000 CMP = com.android.settings/.TestingSettings}
che è fondamentalmente solo un normale lancio di attività, solo per un'attività non launcher . Probabilmente è possibile attivare quell'intenzione da un programma, o facendo in modo che il tuo programma componga il codice ussd.
Cercare di acquisire i dati da utilizzare in un programma sarà tuttavia difficile. L'applicazione delle impostazioni gira sotto il "sistema" uid, ed è in grado di rivendicare molte autorizzazioni non disponibili per le app di terze parti. Le persone coinvolte nella modifica delle impostazioni sono quasi completamente limitate e anche una buona parte dei permessi di lettura probabilmente lo sono.
Guardando attraverso la fonte dell'app Impostazioni sarete in grado di vedere come sta facendo le cose; guardando AndroidManifest.xml ti mostreremo quali permessi sta usando - sfortunatamente, la maggior parte di ciò che probabilmente vorrai fare probabilmente richiede quelli da quella lista che non puoi ottenere per la tua applicazione.
fonte
2011-08-19 19:34:24
+1 per il menu di test nascosto :) – OcuS
@OcuS: non è il menu di test, "4636" legge "INFO" sulla tastiera del telefono. – lenik
Non funziona per me su Samsung Galaxy S7. Funziona su Nexus 5X. E 'una funzione recente in quanto S7 è su 7.0 quando N5X è su 7.1.2? – Eselfar