Ich verwende ein Beispiel der kürzlich veröffentlichten Google People-API von here. Ich habe eine Probe ein wenig erweitert, um zusätzliche Informationen über den Kontakt wie eine E-Mail-Adresse und eine Telefonnummer anzuzeigen. Der Code, der die Arbeit ausführen soll, ist unten aufgeführt.Abrufen von Informationen zu einem Kontakt mit Google People API (Java)
public class PeopleQuickstart {
...
public static void getPersonInfo(Person person){
// Get names
List<Name> names = person.getNames();
if(names != null && names.size() > 0) {
for(Name personName: names) {
System.out.println("Name: " + personName.getDisplayName());
}
}
// Get email addresses
List<EmailAddress> emails = person.getEmailAddresses();
if(emails != null && emails.size() > 0) {
for(EmailAddress personEmail: emails) {
System.out.println("Email: " + personEmail.getValue());
}
}
// Get phone numbers
List<PhoneNumber> phones = person.getPhoneNumbers();
if(phones != null && phones.size() > 0) {
for(PhoneNumber personPhone: phones){
System.out.println("Phone number: " + personPhone.getValue());
}
}
}
public static void main(String [] args) throws IOException {
People service = getPeopleService();
// Request 120 connections.
ListConnectionsResponse response = service.people().connections()
.list("people/me")
.setPageSize(120)
.execute();
// Display information about your connections.
List<Person> connections = response.getConnections();
if (connections != null && connections.size() > 0) {
for (Person person: connections){
getPersonInfo(person);
}
} else {
System.out.println("No connections found.");
}
}
}
Ich teste dieses Programm mit meiner Kontaktliste, und ich kann erfolgreich eine Liste von Personen zusammen mit den Namensfeldern erhalten. Ich kann jedoch keine Werte für E-Mail-Adressen und Telefonnummern erhalten (Listen sind immer null), obwohl diese Werte in meiner Kontaktliste (verifiziert über Google Mail-> Kontakte) festgelegt sind. Was vermisse ich?
Für die Nachwelt hier ist die Liste der gültigen Anfrage Masken: person.addresses, person.age_range, person.biographies, person.birthdays, person.bragging_rights, person.cover_photos, person.email_addresses, person.events, Personen.Gesetze, Personen.im_Kunden, Personen.Interessen, Personen.Lokale, Personen.Mitgliedschaften, Personen.Metadaten, Personen.Name, Personen.Nicknamen, Personen.Aufgaben, Personen.Organisationen, Personen.Phonennummern, Personen.Fotos, Personen. Beziehungen, person.relationship_interests, person.relationship_statuses, person.residences, person.skills, person.taglines, person.urls – GBleaney
Hatte das gleiche Problem (http://stackoverflow.com/questions/36466050/why-cant-i-retrieve -Mails-Adressen-und-Telefonnummern-mit-google-people-api). Freut mich, dass Sie die Lösung gefunden haben. Wir sollten dies Google melden. – nunoarruda
@foma danke, es rettet mich. – Ankur1994a