Çeşitli Android uygulamalarında, e-posta için bir uygulama seçiciyi göstermek için aşağıdaki kodu kullanıyorum ve kullanıcı uygulamalardan birine karar verdikten sonra, önceden tanımlanmış bir metni E-posta formu: For döngüsü içindeÖnceden belirlenmiş metinde satır sonlarını göz ardı eden e-posta amacı (Android)
final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("plain/text");
emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] { "[email protected]" });
emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Sample subject");
String contentStr = "";
for (Object o : mArrayList) { // mArrayList: ArrayList<Object>
content = contentStr+o.toString()+"\n";
}
emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, backupStr);
startActivity(Intent.createChooser(emailIntent, "Choose application"));
, nesnelerin dize çıkışı geçici dize 'contentStr' ile birleştirilmiş. Her nesneden sonra, bir satır sonu ("\ n") olmalıdır.
Bu kodu telefonumda test ettiğimde, iyi çalışıyor ve her nesnenin kendi çizgisi var.
Ancak kullanıcılar, e-posta uygulamasının (Android standardı) her şeyi tek bir satıra eklediğini ve satır sonlarını yoksayar.
Yanlış bir şey yapıyorum? Ya da bu hata raporunu geliştiricinin çözebileceği bir konu olarak görmezden gelebilir miyim?
"Düz/metin" yerine "text/plain" deneyebilirsiniz. Ayrıca, tüm bu birleştirmeyi yapmak yerine 'StringBuilder' kullanmalısınız. Yine de, ya probleminize yardımcı olacağına şüphem var. – CommonsWare
Teşekkürler! Ancak "text/plain" un bir dezavantajını görmek için lütfen aşağıdaki yorumlarımı inceleyin. Marco W. işaret ettiği gibi – caw
, "message/rfc822" e-postalar için doğru mim türü – njzk2