Chcę dołączyć plik .vcf z moją pocztą i wysłać pocztą. Ale wiadomość jest odbierana na adres bez załącznika. Użyłem poniższego kodu, ale kod tego i nie wiem, gdzie się mylę.Jak wysłać wiadomość e-mail z załącznikiem do pliku w Androidzie
try {
String filelocation="/mnt/sdcard/contacts_sid.vcf";
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_SUBJECT, "");
intent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file://"+filelocation));
intent.putExtra(Intent.EXTRA_TEXT, message);
intent.setData(Uri.parse("mailto:"));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
activity.startActivity(intent);
activity.finish();
} catch(Exception e) {
System.out.println("is exception raises during sending mail"+e);
}
jedno spojrzenie na moje pytanie ... http: //stackoverflow.com/questions/12798001/android-how-to-send-multiple-contacts-are-attached-in-single-vcf-file- i-wyślij – NagarjunaReddy
Nie powinieneś używać ścieżek "zakodowanych", ponieważ mogą się one zmieniać w zależności od urządzenia. Proponuję zmienić definicję filelocation na: File filelocation = new File (Environment.getExternalStorageDirectory(). GetAbsolutePath(), nazwa pliku); Następnie zdefiniuj: Ścieżka Uri = Uri.fromFile (filelocation); i umieścić go w swoim zamiarze: emailIntent .putExtra (Intent.EXTRA_STREAM, ścieżka); –
emailIntent.putExtra (Intent.EXTRA_STREAM, filelocation) nie załączyłoby pliku dla mnie, ale używając emailIntent.putExtra (Intent.EXTRA_STREAM, Uri.parse ("file: //" + filelocation)) podobnie jak Phillip działało dobrze. – andytrombone