Ich arbeite derzeit an einer Kontakt-App und ich habe eine Weile gesucht, um einen Kontakt programmatisch in Android zu teilen. Ich wusste nicht, in welchem Format ich den Kontakt an ein anderes Gerät senden sollte. Wenn ich als Text sende, wie es zu Kontakten verarbeitet wird, Vertrag Db in Empfängern Gerät? Können Sie mir bitte vorschlagen, wie es funktioniert?So teilen Sie einen Kontakt programmatisch in Android
Antwort
Wenn Sie fragen, wie Sie es zu etwas wie WhatsApps teilen können Sie versuchen, es und eine Absicht zu senden.
können Sie Klartext wie folgt senden:
Intent whatsappIntent = new Intent(Intent.ACTION_SEND);
whatsappIntent.setType("text/plain");
whatsappIntent.setPackage("com.whatsapp");
whatsappIntent.putExtra(Intent.EXTRA_TEXT, "The text you wanted to share");
try {
activity.startActivity(whatsappIntent);
} catch (android.content.ActivityNotFoundException ex) {
ToastHelper.MakeShortText("Whatsapp have not been installed.");
}
Siehe Share image and text through Whatsapp or Facebook für weitere Details.
Wenn Sie weiter gehen wollen dann, dass ich schlage vor, Sie nehmen einen Blick auf die Drittel Parteientwicklung docs wie für WhatsApp
auch allgemeinere Informationen finden Sie auf this page of Android
finden Here ist eine Übersicht darüber, was Sie in einer Absicht senden können.
Sie müssen den VCard
Griff für den Kontakt kommen (mit ContactsContract
API: Contacts.CONTENT_VCARD_URI
), und dann die ACTION_SEND
Absicht mit senden.
String lookupKey = <the contact's lookup key>;
Uri vcardUri = Uri.withAppendedPath(Contacts.CONTENT_VCARD_URI, lookupKey);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType(ContactsContract.Contacts.CONTENT_VCARD_TYPE);
intent.putExtra(Intent.EXTRA_STREAM, shareUri);
intent.putExtra(Intent.EXTRA_SUBJECT, "Bob Dylan"); // put the name of the contact here
startActivity(intent);
Weitere Informationen hier: https://developer.android.com/reference/android/provider/ContactsContract.Contacts.html#CONTENT_VCARD_URI
UPDATE
eine gelöschte Frage nach @Abhay Maniyar zu beantworten - die lookupKey von einem ContactID zu bekommen:
Cursor cur = getContentResolver().query(Contacts.CONTENT_URI, new String[] { Contacts.LOOKUP_KEY }, Contacts._ID + " = " + contactId, null, null);
if (cur.moveToFirst()) {
String lookupKey = cur.getString(0);
}
Verwenden Sie den folgenden Code, um Ihre Kollegen zu teilen NTACT, erhalten Kontakt Name und LookupKey von Kontakt Cursor
private void shareContact() {
//lookupKey = cursor.getString(cursor.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY));
String lookupKey2 = lookupKey;
Uri uri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_VCARD_URI, lookupKey2);
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType(ContactsContract.Contacts.CONTENT_VCARD_TYPE);
intent.putExtra(Intent.EXTRA_STREAM, uri);
intent.putExtra(Intent.EXTRA_SUBJECT, contactName); // put the name of the contact here
startActivity(intent);
}
- 1. Android - Aktualisieren Sie einen Kontakt
- 2. Wie kann ich einen Kontakt programmatisch hinzufügen?
- 3. So teilen Sie Kontakt per Telegramm Bot über Abfragezeichenfolge
- 4. So teilen Sie die Datei in Android
- 5. So lesen Sie einen einzelnen Kontakt von SQL lite
- 6. So identifizieren Sie einen Kontakt in ContactsContract.Contacts Tabelle
- 7. So rufen Sie Google + Circle-Kontakt in Android
- 8. So öffnen Sie Kontakt mit Absicht in Android
- 9. Einen Link in Android teilen
- 10. So teilen Sie einen String mit ||
- 11. programmatisch Hinzufügen von Kontakt in iPhone Kontaktliste
- 12. So bearbeiten Sie einen Kontakt mit CNContactViewController auf Mac OS
- 13. So löschen Sie einen Kontakt mit dem Lookup_key des Kontakts
- 14. So teilen Sie localhost
- 15. So setzen Sie Android User Permissions programmatisch in Java zurück
- 16. Android - Aktualisiere einen Kontakt im Telefonbuch
- 17. Android - Finden Sie einen Kontakt von Fuzzy/Näherungs/Ähnlichkeitsübereinstimmung
- 18. So deaktivieren Sie den Energiesparmodus programmatisch in Android
- 19. einen kontinuierlichen Kontakt aufnehmen Koordinaten
- 20. So protokollieren Sie PerformanceCounter programmatisch
- 21. So speichern Sie einen Kontakt im Telefon über Absicht? Oder etwas mit Android Studio?
- 22. So teilen Sie einen CSV-Eingangsstrom in Java
- 23. So teilen Sie Cookie-Daten in Chrome benutzerdefinierte Registerkarten Android
- 24. Undelete einen Kontakt in Outlook
- 25. So sortieren Sie ABAddressBook Kontakt durch Vorname
- 26. Wie man einen Anruf programmatisch in android
- 27. Wie lösche ich einen Kontakt?
- 28. So teilen Sie ohne Regex
- 29. So stoppen Sie einen Alarm in Android
- 30. So implementieren Sie einen OnMenuItemClickListener in Android
Dank @Raymond de la Croix! Ich werde das ausprobieren! – Kanagalingam
Goodluck :) Ich habe gerade eine andere Referenzseite von Android hinzugefügt, die alle Sendearten anzeigt, was auch hilfreich sein sollte –