Autore Topic: chiudere una chimata  (Letto 639 volte)

Offline FabioZonta

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    emulatore pc
  • Sistema operativo:
    mac os
chiudere una chimata
« il: 02 Aprile 2013, 21:39:15 CEST »
0
Ciao a tutti io sto realizzando un app che attraverso un broadcast receiver vede il numero chiamante e manda ad un altro numero un sms con coordinate. Il problema che sto riscontrando è la chiusura della chiamata. cercando su google ho trovato che per chiudere la chiamata è necesario utilizzare  "com.android.internal.telephony.ITelephony telephonyService".
Allego il codice che uso purtroppo arrivo a stampare il Log.v ma poi crasha l'applicazione lo sto testando su un android 2.3. Avete qualche idea?? Grazie mille per l'aiuto siete tutti fantstici
Codice: [Seleziona]
TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
                try {
                    // Java reflection to gain access to TelephonyManager's
                    // ITelephony getter
                    Log.v("SERVICE", "Get getTeleService...");
                    Class c = Class.forName(tm.getClass().getName());
                    Method m = c.getDeclaredMethod("getITelephony");
                    m.setAccessible(true);
                    com.android.internal.telephony.ITelephony telephonyService = (ITelephony) m.invoke(tm);
                } catch (Exception e) {
                    e.printStackTrace();
                    Log.e("ERROE","FATAL ERROR: could not connect to telephony subsystem");
                    Log.e("Exception", "Exception object: " + e);
                }
               
                telephonyService.endCall();


Offline denper

  • Utente normale
  • ***
  • Post: 290
  • Respect: +60
    • Mostra profilo
    • Anddenper
  • Dispositivo Android:
    Moto G
  • Play Store ID:
    denper
  • Sistema operativo:
    Window 7, Windows XP
Re:chiudere una chimata
« Risposta #1 il: 03 Aprile 2013, 08:26:09 CEST »
0
Ciao,
tale metodo non funziona più a partire dalla versione Android 2.3. Da questa versione, per motivi di sicurezza, non è più possibile terminare una chiamata da codice nemmeno usando la tecnica della reflection. L'accesso alle chiamate è possibile solo per le applicazioni di sistema. Se qualcuno può smentirmi bene venga!  ;-)
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. [A.Einstein]

Proteggi la tua privacy! Utilizza GhostPhone! https://play.google.com/store/apps/details?id=com.denper.gp
Giochi a Winforlife e Superenalotto e sei stanco di controllare le tue schedine manualmente? Prova Checkwin: https://play.google.com/store/apps/details?id=com.denper.checkwintrial

Offline FabioZonta

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    emulatore pc
  • Sistema operativo:
    mac os
Re:chiudere una chimata
« Risposta #2 il: 03 Aprile 2013, 12:02:05 CEST »
0
Ciao denper grazie per la tua risposta, quindi non esiste nessun modo per chiudere una chiamata :-X ?

Offline denper

  • Utente normale
  • ***
  • Post: 290
  • Respect: +60
    • Mostra profilo
    • Anddenper
  • Dispositivo Android:
    Moto G
  • Play Store ID:
    denper
  • Sistema operativo:
    Window 7, Windows XP
Re:chiudere una chimata
« Risposta #3 il: 03 Aprile 2013, 13:31:01 CEST »
0
Che sappia io no.
Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. [A.Einstein]

Proteggi la tua privacy! Utilizza GhostPhone! https://play.google.com/store/apps/details?id=com.denper.gp
Giochi a Winforlife e Superenalotto e sei stanco di controllare le tue schedine manualmente? Prova Checkwin: https://play.google.com/store/apps/details?id=com.denper.checkwintrial

Offline FabioZonta

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    emulatore pc
  • Sistema operativo:
    mac os
Re:chiudere una chimata
« Risposta #4 il: 04 Aprile 2013, 10:53:40 CEST »
0
Scusate son ancora io ma neanche avendo i permessi di root è possibile andare a chiudere una chiamata??
Grazie per le Vostre risposte

Offline redmarv

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2
  • Play Store ID:
    Owl Studios
  • Sistema operativo:
    Mac OSX
Re:chiudere una chimata
« Risposta #5 il: 03 Maggio 2013, 11:13:51 CEST »
0
Idea potenzialmente stupida, ma da provare...

Invece che cercare di chiudere la chiamata, fai in modo che l'applicazione metta in modalità offline per un paio di secondi il cellulare e poi lo rimetta on line.

La chiamata va giù, dopo di che tu puoi inviare l'sms ;)

Offline FabioZonta

  • Nuovo arrivato
  • *
  • Post: 13
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    emulatore pc
  • Sistema operativo:
    mac os
Re:chiudere una chimata
« Risposta #6 il: 23 Maggio 2013, 21:59:52 CEST »
0
Grazie mille per la risposta  :-) :-) :-), ma poi ho optato per un'altra soluzione utilizzando sms come richiesta