2010-09-04 4 views
5

Gibt es eine Möglichkeit in der Adressbuch-API, programmatisch auf den aktuellen Benutzereintrag zuzugreifen? Mit anderen Worten, wenn dieses iPhone zu John Smith gehört, um den Kontaktdatensatz zu erhalten, der John Smith ist (welcher Datensatz ist als ich in Kontakten markiert)?Wie greifen Sie auf den aktuellen Benutzereintrag im Adressbuch zu?

Offensichtlich können Sie den Picker Popup und lassen Sie den Benutzer wählen Sie sich aus ihren Kontakten, aber das scheint wie eine unnötige Aktion für den Benutzer zu nehmen.

Anwendungsfall: Ich habe ein Formular in meiner App und möchte das Formular für den Benutzer basierend auf den Kontaktdaten, die es bereits eingegeben hat, vorab ausfüllen. Es wäre schöner, dies nur für sie zu zeigen, als sie dazu zu bringen, alle ihre Kontakte durchzugehen und sich selbst auszuwählen.

Antwort

6

Es gibt keinen Zugriff auf die Adressbuchkarte des Benutzers. Der Grund dafür ist, dass Apple nicht möchte, dass Apps potenziell persönliche Informationen sehen können, ohne dass der Nutzer der App zuerst Zugriff auf diese Informationen gewährt.

Ich würde nicht wollen, dass eine App meine E-Mail-Adresse, Telefonnummer und Heimatadresse von meiner Karte lesen und tun kann, was sie will, es sei denn, ich sagte, es könnte an erster Stelle stehen.

Aus diesem Grund müssen Sie dem Benutzer den Adressbuch-Picker präsentieren und ihm ermöglichen, seinen Adressbucheintrag auszuwählen.

+0

Das ist so ein Rückschritt in der Benutzerfreundlichkeit obwohl. Idealerweise würde es eine spezielle Anfrage geben, die die App machen könnte, und das Telefon würde den Benutzer fragen, ob er der App die Erlaubnis erteilen möchte, auf ihre persönlichen Informationen zuzugreifen. Es gibt nichts, was dir bewusst ist, nicht wahr? – devios1