Question

En ce qui concerne ma compréhension, il n'y a pas d'API publique disponible dans l'iPhone SDK pour trouver les utilisateurs numéro de téléphone mobile.

Peut-on trouver le numéro de téléphone mobile de l'utilisateur iPhone en utilisant le cadre de la téléphonie de base ajoutée dans la version 4.0 SDK?

Était-ce utile?

La solution

Non, le cadre de CoreTelephony fournit des informations de base sur le support et les informations limitées sur les appels, pas grand-chose.

Les informations limitées inclut des choses comme le nombre d'appels actifs en cours, le numéro d'appel (pas un numéro de téléphone mobile, juste un identifiant unique que l'OS utilise pour suivre l'appel particulier) et l'état d'un appel, comme si l'appel est en attente ou non.

La principale caractéristique de CallTelephony est une API pour vérifier si oui ou non un transporteur permet la VoIP sur 3G.

Autres conseils

Oui, vous le pouvez, mais il est délicat. Il consiste à utiliser iOS API privée, qui déterminera Apple pour rejeter votre application dans le cas où vous souhaitez publier sur l'App Store.

Voici ce que je l'ai fait:

  1. téléchargez et installez l'utilitaire classe vidage: http://www.codethecode.com/projects/class-dump/
  2. dans la ligne de commande aller dans ce dossier: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.0.sdk/System/Library/Frameworks/CoreTelephony.framework et exécuter la commande suivante:

      

    CoreTelephony classe décharge> CoreTelephony.h

    Cela va créer un fichier d'en-tête dans le répertoire courant. déplacer ce fichier dans le répertoire désiré.

  3. dans votre projet Xcode, importez le CoreTelephony.framework (Xcode 4: cliquez sur la cible du projet -> Construire onglet Phases -> Lien binaire avec Bibliothèques -> + -> sélectionnez la CoreTelephony.framework dans la liste iOS -> cliquez sur Ajouter)
  4. importer le fichier CoreTelephony.h en utilisant la même méthode que ci-dessus Xcode 4: cliquez sur la cible du projet -> Construire onglet Phases -> Lien binaire Avec les bibliothèques -> + -> Ajouter un autre -> sélectionnez votre fichier dans le Finder)
  5. à la fin du fichier CoreTelephony.h, ajoutez ce qui suit:

    extern NSString *CTSettingCopyMyPhoneNumber();
    
  6. importer le CoreTelephony.h dans votre code et appeler la fonction ci-dessus.
  7. lors de la construction du projet, vous pouvez constater qu'il ya compilation erreurs dans le CoreTelephony.h - habituellement une déclaration d'interface qui doit être déplacé avant une autre déclaration d'interface ou des séquences de protocole écrit de façon incorrecte
  8. Si vous avez des erreurs reliant, utilisez les drapeaux de liaison suivant les paramètres de construction de votre projet cible:

    -force_flat_namespace 
    -undefined suppress 
    

    (Xcode 4: cliquez sur la cible du projet -> Créer onglet Paramètres -> Lier -> double-cliquez sur la section des valeurs des Autres drapeaux Linker propriété -> + -> ajouter des indicateurs ci-dessus -> Fait

  9. maintenant, vous devriez être en mesure d'obtenir ce numéro de téléphone:)

si tu veux obtenir le numéro de téléphone cellulaire de journal d'appels voir alors ce lien, il peut être utile. Mais je ne suis pas sûr qu'après avoir utilisé cette pomme sera aprove ur app.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top