2011-08-18 8 views
6

Sto scrivendo un'applicazione in cui ho bisogno di avere una connessione GPRS specifica, anche se è disponibile la connessione wifi o 3G (o meglio). Ho capito come disabilitare il wifi (usando WifiManager), tuttavia, non riesco a scoprire come posso disabilitare a livello di programmazione 3G e utilizzare solo una connessione GPRS, con lo stesso effetto di cambiarlo manualmente nelle impostazioni del dispositivo.Come forzare una connessione GPRS invece di 3G o Wifi?

C'è un modo per farlo con il codice?

UPDATE: Quello che sto cercando non deve necessariamente essere nelle API pubbliche di Android. Potrebbe anche essere in una delle API non documentate o, come ultima risorsa, API specifiche del dispositivo, ho solo bisogno di qualcosa che funzioni. Tuttavia, preferirei non dover eseguire il root di un dispositivo per utilizzare queste funzioni.

risposta

2

Il problema non sono solo le API private ma un APK di terze parti non può ottenere il permesso di modificare tale impostazione.

Di conseguenza, fare ciò richiederebbe un dispositivo rooted oltre alle interfacce private di reverse engineering.

0

per quanto ne so cambiare il tipo di rete mobile non è possibile da un'app.

+0

Conosco almeno un'applicazione che sembra avere questa capacità (vale a dire l'applicazione [Controls estesi] (https://market.android.com/details?id=com.extendedcontrols), quindi non pensa che sia impossibile – Frxstrem

+0

@Frxstream: l'hai verificato su un dispositivo non rootato? "possibile da un'app" tende a riferirsi a ciò che Android è stato progettato per consentire alle app di fare, avviando processi di supporto poiché il superutente non è una funzionalità progettata. –

0

Nel framework Android, TelephonyManager è l'oggetto che fornisce il servizio Telefonia all'applicazione Android.
vedi http://developer.android.com/reference/android/telephony/TelephonyManager.html
Il servizio fornisce diversi metodi per conoscere lo stato e le informazioni del componente radio fisico.

Ma non c'è modo di modificare il modo in cui il componente radio fisico del dispositivo fa il suo lavoro. La sua una logica privata del produttore del dispositivo che cercano di fare del suo meglio per rispettare standard di industriali radiofonia e fornire la migliore esperienza di qualità all'utente finale

Questa è un'API pubblica punto androide di vista (su Dalvik) risposta, fare non rispondere nel contesto di API Android privato, né modo nativo, né modo privilegiato di root.