【问题标题】:Android : Send feedback to default email [duplicate]Android:将反馈发送到默认电子邮件[重复]
【发布时间】:2017-02-04 22:17:44
【问题描述】:

我有一个反馈表和发送和取消按钮。单击发送按钮时,如何使反馈发送响应默认电子邮件?以及如何设置默认电子邮件。这可能吗?请告诉我。谢谢。

这是我的反馈表单:

            @Override
            public void onClick(View arg0) {

                // Create custom dialog object
                final Dialog dialog = new Dialog(MainActivity.this);
                // Include dialog.xml file
                dialog.setContentView(R.layout.activity_main);
                // Set dialog title
                dialog.setTitle("Feedback"); 

                dialog.show();

                Button button1 = (Button) dialog.findViewById(R.id.button1);
                // if decline button is clicked, close the custom dialog
                button1.setOnClickListener(new OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        // Close dialog
                        dialog.dismiss();
                    }
                });

                Button button2 = (Button) dialog.findViewById(R.id.button2);
                // if decline button is clicked, close the custom dialog
                button2.setOnClickListener(new OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        // Close dialog
                        dialog.dismiss();
                    }
                });

【问题讨论】:

标签: android email


【解决方案1】:

使用选择器以编程方式打开您的电子邮件客户端:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("plain/text");
intent.putExtra(Intent.EXTRA_EMAIL, new String[] { "some@email.address" });
intent.putExtra(Intent.EXTRA_SUBJECT, "subject");
intent.putExtra(Intent.EXTRA_TEXT, "mail body");
startActivity(Intent.createChooser(intent, ""));

要在不使用选择器的情况下以编程方式发送电子邮件,您可以使用this 链接。

【讨论】:

    【解决方案2】:

    你可以使用下面的sn-p:

         private void sendEmail(String email) {
    
                        Intent emailIntent = new Intent(Intent.ACTION_SENDTO);
    
                        String aEmailList[] = {email};
                        emailIntent.setData(Uri.parse("mailto:")); // only email apps should handle this
                        emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, aEmailList);
                        String feedback_msg = getString(R.string.feedback_msg);
                        emailIntent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml("<i><font color='your color'>" + feedback_msg + "</font></i>"));
                        emailIntent.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.feedback_msg));
    
                        PackageManager packageManager = getActivity().getPackageManager();
                        boolean isIntentSafe = emailIntent.resolveActivity(packageManager) != null;
                        if (isIntentSafe) {
                            startActivity(emailIntent);
                        } else {
                            Toast.makeText(getActivity(), R.string.email_app_not_installed, Toast.LENGTH_SHORT).show();
                        }
                    } 
       }
    

    【讨论】:

    • 我有点迷路了。我应该在哪里添加这个 sn-p? @拉姆
    • 在点击发送按钮时使用电子邮件 ID 作为参数调用此方法
    猜你喜欢
    • 1970-01-01
    • 2013-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-07
    • 2021-08-09
    • 2011-08-05
    相关资源
    最近更新 更多