C'è un modo per dire se è in uso la vostra applicazione mentre l'utente è al telefono?

StackOverflow https://stackoverflow.com/questions/1533964

  •  20-09-2019
  •  | 
  •  

Domanda

Ci sono alcune parti del mio app che sarebbe meglio per evidenziare all'utente se sono al telefono.

C'è una chiamata per controllare per vedere se siamo al telefono? Purtroppo, "chiamata" è una parola orribile per verificare la presenza di documenti API per ovvi motivi.

È stato utile?

Soluzione

Il quadro CoreTelephony può dire.

Il metodo CTCallCenter currentCalls restituisce una serie di chiamate cellulari attualmente attivi.

Altri suggerimenti

Date un'occhiata alla differenza di dimensioni tra [[UIScreen mainScreen] bounds] e [[UIScreen mainScreen] applicationFrame]. Se il diff è di 20 pixel e non si nasconde la barra di stato, quindi gli utenti probabilmente non è in corso una chiamata. Se la differenza è di 40 pixel, gli utenti è probabilmente in una chiamata, dal momento che la barra di stato incandescente verde che compare durante le chiamate è circa due volte più grande come la normale barra di stato.

Non ho fatto prima, così YMMV. Buona fortuna e fatemi sapere se funziona!

L'applicazione non viene chiuso quando arriva una chiamata, transita allo stato inattivo. Il seguente metodo dovrebbe essere chiamato sul UIApplicationDelegate :

- (void)applicationWillResignActive:(UIApplication *)application

Questo metodo è anche chiamato in altri casi, ad esempio quando l'iPhone è bloccato, e non avete modo di determinare se si trattasse di una chiamata in arrivo che lo ha causato.

Quando l'iPhone riceve una chiamata, la chiusura dell'applicazione. È possibile registrare un callback per gestire questo evento con garbo, vedi:

http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UIApplicationDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UIApplicationDelegate/applicationWillTerminate :

Dopo la chiamata è terminata, l'applicazione si ri-lancio.

Le applicazioni che appaiono per preservare il vostro stato durante una chiamata sono solo scritti bene:)


Arggh! Ho appena letto la tua domanda attuale.

Non riesco a trovare, né so di nessun API per accedere all'applicazione telefono. Il mio unico consiglio sarebbe che il telefono è un'applicazione come qualsiasi altro -. E può pubblicare le informazioni attraverso il tunnel http tutte le applicazioni forniscono

Mi chiedo se si può solo avere un "io sono al telefono" tasto l'utente può premere per ottenere gli stessi risultati?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top