Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android发送带有附件错误的电子邮件_Java_Android_Gmail - Fatal编程技术网

Java Android发送带有附件错误的电子邮件

Java Android发送带有附件错误的电子邮件,java,android,gmail,Java,Android,Gmail,我想从我的应用程序发送带有附件的电子邮件(附件是csv文件),但Gmail说,附件无法添加。将文本转换为csv或将附件添加到gmail中是否有错误 我的代码: public class EmailInput extends DialogFragment { View mainView; TextView email; Button submitSend; ArrayList<String> resultsEmail; ArrayList<

我想从我的应用程序发送带有附件的电子邮件(附件是csv文件),但Gmail说,附件无法添加。将文本转换为csv或将附件添加到gmail中是否有错误

我的代码:

public class EmailInput extends DialogFragment {

    View mainView;
    TextView email;
    Button submitSend;
    ArrayList<String> resultsEmail;
    ArrayList<String> valuesMail;
    TextView soucetVysledkuMail;
    String subject = "Kubírovací kalkulačka";
    MainActivity MA;
    String attachmentFile;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        MA = (MainActivity) getActivity();
        mainView = inflater.inflate(R.layout.fragment_email_input, container, false);
        email = (TextView) mainView.findViewById(R.id.email);
        submitSend = (Button) mainView.findViewById(R.id.submitSend);
        resultsEmail = ((MainActivity) getActivity()).getVysledky();
        valuesMail = ((MainActivity) getActivity()).getValues();
        soucetVysledkuMail = ((MainActivity) getActivity()).getSoucetVysledku();

        getDialog().setTitle("Odeslat výsledky");

        submitSend.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String FILENAME = "email-attachment.csv";
                String string = "";

                try {
                    FileOutputStream fOut = ((MainActivity) getActivity()).getContext().openFileOutput(FILENAME, Context.MODE_PRIVATE);

                    for (int i = 0; i < resultsEmail.size(); i++) {
                        string += resultsEmail.get(i) + "," + valuesMail.get(i);
                    }
                    string += "Součet výsledků:," + MA.getsoucetVsechVysledkuMA();
                } catch (FileNotFoundException e) {
                    e.printStackTrace();
                }
                attachmentFile = "mail-attachment.csv";
                Uri URI = Uri.parse("file://" + attachmentFile);

                String content = results();
                Intent emailIntent = new Intent(Intent.ACTION_SEND);
                emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{email.getText().toString()});
                emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);
                emailIntent.putExtra(Intent.EXTRA_TEXT, content);
                emailIntent.putExtra(Intent.EXTRA_STREAM, URI);
                emailIntent.setType("text/plain");
                startActivity(Intent.createChooser(emailIntent, "Vyberte aplikaci:"));
            }
        });

        return mainView;
    }

    public String results() {
        String content = "";
        for (int i = 0; i < resultsEmail.size(); i++) {
            int cislovka = i+1;
            content += cislovka + ". " + resultsEmail.get(i) + " (" + valuesMail.get(i) + ") \n";
        }
        content += "Součet výsledků: " + MA.getsoucetVsechVysledkuMA();
        return content;
    }
}
公共类EmailInput扩展了DialogFragment{
主视图;
TextView电子邮件;
按钮提交发送;
ArrayList结果邮件;
ArrayList valuesMail;
TextView soucetVysledkuMail;
String subject=“Kubírovacíkalkulačka”;
主要活动MA;
字符串附件文件;
@凌驾
CreateView上的公共视图(布局、充气机、视图组容器、捆绑包保存状态){
MA=(MainActivity)getActivity();
mainView=充气机。充气(R.layout.fragment\u email\u输入,容器,false);
email=(TextView)mainView.findViewById(R.id.email);
submitSend=(按钮)mainView.findviewbyd(R.id.submitSend);
结果邮件=((MainActivity)getActivity()).getVysledky();
valuesMail=((MainActivity)getActivity()).getValues();
soucetVysledkuMail=((主活动)getActivity()).getSoucetVysledku();
getDialog().setTitle(“Odeslat výsledky”);
submitSend.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
String FILENAME=“email attachment.csv”;
字符串=”;
试一试{
FileOutputStream fOut=((MainActivity)getActivity()).getContext().openFileOutput(文件名,Context.MODE_PRIVATE);
对于(int i=0;i
权限有问题。如果要将文件附加到邮件,则必须将其保存在公共文件夹(如Documents)中。

权限有问题。如果要将文件附加到邮件中,则必须将其保存在公共文件夹中,如“文档”