Ich versuche, einen Kontakt mit meiner Android-App zu teilen, und Im Lager. Gibt es eine Möglichkeit, einen Kontakt direkt über Intents zu teilen? Oder muss ich die Kontaktinformationen senden und in dem anderen Gerät neu erstellen? Gibt es noch eine andere Möglichkeit, dies zu tun, ohne Absichten zu verwenden?Kontakte in android teilen
Antwort
Sie können ContactsContract
APIs verwenden, um einen Kontakt als vcard-Datei freizugeben (z. B. zum Senden über WhatsApp).
(ich nehme an, Sie bereits die lookupKey Kontakt haben, wenn Sie es nicht haben, lassen Sie mich wissen, und ich werde den Code für das Erhalten es von ContactID hinzufügen)
UPDATE hinzugefügt Methode LookupKey von ContactID
(stellen Sie sicher, dass Sie importieren Contacts
von ContactsContract.Contacts
)
private String getLookupKey(long contactId) {
String lookupKey = null;
String[] projection = new String[]{Contacts.LOOKUP_KEY};
String selection = Contacts._ID + "=" + contactId;
Cursor c = getContentResolver().query(Contacts.CONTENT_URI, projection, selection, null, null);
if (c != null) {
if (c.moveToFirst()) {
lookupKey = c.getString(0);
}
c.close();
}
return lookupKey;
}
String lookupKey = getLookupKey(long contactId);
if (TextUtils.isEmpty(lookupKey)) {
Log.e(TAG, "couldn't get lookupKey");
return;
}
Uri shareUri = Uri.withAppendedPath(Contacts.CONTENT_VCARD_URI, lookupKey);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType(Contacts.CONTENT_VCARD_TYPE);
intent.putExtra(Intent.EXTRA_STREAM, shareUri);
intent.putExtra(Intent.EXTRA_SUBJECT, "Share a contact");
startActivity(intent);
Die Strategie, die ich verwenden würde, wäre, die gewünschten Kontakte lokal zu holen. Dann parsen Sie diese in JSON-Objekte mit den gewünschten Feldern. Senden Sie den JSON entweder an einen Server, von dem der andere Benutzer herunterlädt, oder senden Sie den JSON über Bluetooth an ein anderes Gerät.
ich verstehe, aber zum Beispiel zu bekommen, wenn ich es über whatsApp senden wollen, wie kann ich die json einen Kontakt auszukommen obje in WhatsApp? – Maxi
- 1. Android-Kontakte - Was sind alle Kontotypen für Android-Kontakte?
- 2. Smart Suche Kontakte in Android
- 3. Erhalten Android Kontakte in Xamarin
- 4. Android: Kontakte Phone.TYPE
- 5. Android lesen Kontakte Anzahl
- 6. Android. Kontakte als Listenansicht
- 7. wie android Kontakte
- 8. Android Favoriten Kontakte Layout
- 9. Kontakte-Anwendung mit android
- 10. Android Nougat - Kontakte Schema falsch
- 11. Android Kontakte RAW_CONTACT_ID vs contact_id
- 12. Android Kontakte in die Anwendung holen
- 13. Wie Kontakte bekommen Telefonnummer in Android
- 14. Wie häufig Kontakte in Android zu lesen
- 15. Kontakte aus Ordnern in "Andere Kontakte" abrufen
- 16. Häufig kontaktierte Kontakte in Google Kontakte API
- 17. Suchen Sie doppelte Kontakte in Kontakte Framework
- 18. Einen Link in Android teilen
- 19. Android-Kontakte: Falsche lokalisierte Sortierung/Sortierung
- 20. Open WhatsApp Kontakte Liste von Android-App
- 21. SQLite android Extrakt Kontakte mit Telefonnummer
- 22. "query()" gibt wiederholte Kontakte zurück: Android
- 23. wie man eindeutige kontakte von android
- 24. doppelte Kontakte als vcf Datei Android
- 25. erhalten Alle Kontakte von Mobile Android
- 26. Android-Kontaktauswahl - nur Kontakte mit Nummern?
- 27. Android T9 Suche Kontakte (Smart Dialer)
- 28. Android - Kontakte Adressfeld Aktualisierung auf andere Felder
- 29. Erhalten Sie Kontakte von Telefon nur Android
- 30. Android Sip Anwendung Anruf aus Kontakte/Telefonbuch
Vielen Dank für die Antwort, Es tut uns leid, aber ich weiß nicht einmal, was ein LookupKey eines Kontakts ist, würde es Ihnen etwas ausmachen, mir das zu erklären und den Code fallen zu lassen? – Maxi
Haben Sie eine Kontakt-ID? – marmor
ja, ich habe, es funktioniert, vielen dank: D – Maxi