2013-10-27 3 views
0

Я хотел бы отправить электронное письмо с адресами электронной почты из SharedPreferences. Пользователь должен ввести адрес электронной почты в SharedPreferences, и намерение сообщения должно использовать этот адрес.Адрес электронной почты от SharedPreference для messageIntent

В данный момент я использую этот код для отправки электронной почты с прикреплением и адресом исправления. Может кто-нибудь покажет мне новый код?

private final void mailNote() { 
    Intent messageIntent = new Intent(android.content.Intent.ACTION_SEND); 
    String aEmailList[] = { "[email protected]" }; 
    messageIntent.putExtra(android.content.Intent.EXTRA_EMAIL, aEmailList); 
    messageIntent.putExtra(Intent.EXTRA_TEXT, "eMail from APP");//eMail Text 
    messageIntent.putExtra(Intent.EXTRA_SUBJECT, "Info"); //Betreff 
    // get the data from the cursor using the column index indicatormessage 
    Intent.setType("plain/text"); 
    messageIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///mnt/sdcard/CEDApp/CEDApp_export.txt")); 
    startActivity(Intent.createChooser(messageIntent, "Email:")); 
    Intent chooser = Intent.createChooser(messageIntent, "choose an option:");//Überschrift 
    // Send the note 
    startActivity(chooser); 
} 

Спасибо и привет из Германии, Katsche

ответ

0
SharedPreferences settings = null; 
settings = PreferenceManager.getDefaultSharedPreferences(this); 
eMailAdress = settings.getString("eMailAdress", ""); // Replace eMailAdress with your Pref name 
0

ич бин Android-: Новичок унд хабе дас Jetzt так umgestellt jedoch funktioniert дас Nicht, sprich эс вирда Keine eMailadresse AUS-дер-SharedPreferences мит übergeben.

private final void mailNote() { 
Intent messageIntent = new Intent(android.content.Intent.ACTION_SEND); 
messageIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 

SharedPreferences settings = getPreferences(MODE_PRIVATE); 
settings = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
eMailAdress = settings.getString("emailkey", ""); 
messageIntent.putExtra(android.content.Intent.EXTRA_EMAIL, eMailAdress); 

messageIntent.putExtra(Intent.EXTRA_TEXT, "eMail from CED-APP");//eMail Text 
messageIntent.putExtra(Intent.EXTRA_SUBJECT, "CED-Info"); //BetreffmessageIntent.setType("plain/text"); 
messageIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///mnt/sdcard/CEDApp/CEDApp_export.txt"));startActivity(Intent.createChooser(messageIntent, "Email:")); 
Intent chooser = Intent.createChooser(messageIntent, "choose an option:");//Überschrift 
// Send the note 
startActivity(chooser); 
} 
0

Ну, прежде чем ваши извлекать данные из SharedPreferences, вы также должны поместить его туда:

settings = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
settings.edit().putString("emailKey", "[email protected]").commit(); 
0

Я пытался обновить свой код следующим образом:

private final void mailNote() { 
Intent messageIntent = new Intent(android.content.Intent.ACTION_SEND); 
messageIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 

SharedPreferences settings = getPreferences(MODE_PRIVATE); 
settings = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
settings.edit().putString("emailkey", "[email protected]").commit(); 

messageIntent.putExtra(android.content.Intent.EXTRA_EMAIL, eMailAdress); //<== ERROR 

messageIntent.putExtra(Intent.EXTRA_TEXT, "eMail from CED-APP");//eMail Text 
messageIntent.putExtra(Intent.EXTRA_SUBJECT, "CED-Info"); //Betreff 
messageIntent.setType("plain/text"); 
messageIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///mnt/sdcard/CEDApp/CEDApp_export.txt")); 
startActivity(Intent.createChooser(messageIntent, "Email:")); 
Intent chooser = Intent.createChooser(messageIntent, "choose an option:");//Überschrift 
// Send the note 
startActivity(chooser); 
} 

I подумайте о линии с комментарием: ERROR - проблема или?

Смежные вопросы