Domanda

Per quanto riguarda la mia comprensione, non v'è alcuna API pubblica disponibile in iPhone SDK per trovare gli utenti numero di cellulare.

Possiamo trovare il numero di cellulare di iPhone utente utilizzando la telefonia quadro Nucleo aggiunto in 4,0 SDK?

È stato utile?

Soluzione

No, il quadro CoreTelephony fornisce alcune informazioni di base sul supporto e informazioni limitate sulle chiamate, non molto altro.

Le informazioni limitate include cose come la quantità di chiamate attive in corso, l'ID chiamata (non un numero di cellulare, solo un ID univoco che gli usi del sistema operativo per monitorare la chiamata particolare) e lo stato di una chiamata, come se la chiamata è in attesa o meno.

La caratteristica principale di CallTelephony è un'API per verificare se un vettore consente VoIP su 3G.

Altri suggerimenti

Sì, è possibile, ma è difficile. Si tratta di utilizzare iOS API private, che determinerà Apple di rifiutare la vostra applicazione nel caso in cui si desidera pubblicare su App Store.

Ecco quello che ho fatto:

  1. scaricare e installare l'utility di classe-dump: http://www.codethecode.com/projects/class-dump/
  2. nella riga di comando Vai a questa cartella: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/System/Library/Frameworks/CoreTelephony.framework ed eseguire il seguente comando:

      

    class-dump CoreTelephony> CoreTelephony.h

    Questo creerà un file di intestazione nella directory corrente. Sposta questo file nella cartella desiderata.

  3. nel progetto Xcode, importare il CoreTelephony.framework (Xcode 4: clicca sul target del progetto -> scheda fasi di creazione -> Collegamento binario con Biblioteche -> + -> selezionare la CoreTelephony.framework nella lista iOS -> fare clic su Aggiungi)
  4. importare il file CoreTelephony.h utilizzando lo stesso metodo di cui sopra Xcode 4: cliccare sul target del progetto -> scheda fasi di creazione -> Collegamento binario Con Biblioteche -> + -> Aggiungi Altro -> selezionare il file nel Finder)
  5. alla fine del file CoreTelephony.h, aggiungere la seguente:

    extern NSString *CTSettingCopyMyPhoneNumber();
    
  6. importare il CoreTelephony.h nel codice e chiamare la funzione di cui sopra.
  7. quando si costruisce il progetto, si potrebbe scoprire che ci sono compilation errori nella CoreTelephony.h - di solito una dichiarazione di interfaccia che deve essere spostato prima un'altra dichiarazione interfaccia o sequenze di protocollo scritte in modo errato
  8. nel caso tu abbia collega gli errori, utilizzare le bandiere a seguito di collegamento in le impostazioni di generazione del vostro target di progetto:

    -force_flat_namespace 
    -undefined suppress 
    

    (Xcode 4: cliccare sul target del progetto -> Costruire scheda Impostazioni -> Collegamento -> doppio clic sulla sezione Valori del Altre Bandiere del linker Proprietà -> + -> add bandiere sopra -> Fatto

  9. ormai si dovrebbe essere in grado di ottenere quel numero di telefono:)

se u vuole ottenere il numero di telefono cellulare da registro delle chiamate allora vedere questo link può essere utile. Ma io non sono sicuro che dopo aver usato questa mela si aprove ur app. dettagli della chiamata

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