그래서 사용자의 전자 메일을 나에게 보내주기를 원하지만 사용자가 전자 메일 앱을 선택하고 수동으로 "받는 사람"주소를 입력하지 않아도되도록하고 싶습니다. 무엇을해야할지 모르겠습니다.사용자로부터 피드백 입력을 받아 전자 메일을 보내는 앱을 만들려고합니다. 아이디어?
현재 모든 입력 내용을 저장하지만 사용자가 전자 메일 클라이언트를 선택하게하고 "받는 사람"필드를 미리 채우지 않습니다.
우리는 Intent을 사용하여 이메일을 보낼 수 있습니다 ...package com.rappe.refillsapp;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Button;
import android.content.Intent;
public class RefillActivity extends Activity {
public String name;
public String birthday;
public String prescriptionOptions;
public String notes;
public String number;
public String email;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.refill_activity_main);
Button submit = (Button) findViewById(R.id.ButtonSendRefillRequest);
submit.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
sendRefillRequest();
String to = email;
String subject = name;
String message = (birthday+"\n"+number+"\n"+prescriptionOptions+"\n"+notes);
Intent mEmail = new Intent(Intent.ACTION_SEND);
mEmail.putExtra(Intent.EXTRA_EMAIL, to);
mEmail.putExtra(Intent.EXTRA_SUBJECT, subject);
mEmail.putExtra(Intent.EXTRA_TEXT, message);
//lets user choose email client/app
mEmail.setType("message/rfc822");
startActivity(Intent.createChooser(mEmail, "Choose an email client to send your request for a refill!"));
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.refill, menu);
return true;
}
public void sendRefillRequest(){
final EditText nameField = (EditText) findViewById(R.id.EditTextName);
name = nameField.getText().toString();
final EditText birthdayField = (EditText) findViewById(R.id.EditTextBirthday);
birthday = birthdayField.getText().toString();
final EditText numberField = (EditText) findViewById(R.id.EditTextPrescriptionNumber);
number = numberField.getText().toString();
final Spinner prescriptionOptions = (Spinner) findViewById(R.id.SpinnerPrescriptionOptions);
this.prescriptionOptions = prescriptionOptions.getSelectedItem().toString();
final EditText notesField = (EditText) findViewById(R.id.EditTextSpecialNotes);
notes = notesField.getText().toString();
}
}
이 경우에는 PHP 스크립트에 데이터를 제출하고 자신의 메일 주소로 전달하십시오. –