发送电子邮件和图像

时间:2016-03-23 07:50:35

标签: android

我在Android Intents上上课,发送电子邮件和图片。

在教程中,他们使用intent.setData(Uri.parse("mailto:"))发送电子邮件。他们使用intent.putExtra(Intent.EXTRA_STREAM,imageURI)附加图片。

我的问题是:

  1. 什么是URI,实际上是Uri.parse

  2. Uri.parse("mailto:)做什么?

  3. intent.putExtra(Intent.EXTRA_STREAM,imageURI)做什么?

2 个答案:

答案 0 :(得分:0)

我有一些简单的代码可以通过按下按钮发送电子邮件,希望它有所帮助!

button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    try {
                        i = new Intent(Intent.ACTION_SENDTO, Uri.fromParts(
                                "mailto",
                                getString(R.string.email_toSend),
                                null));
                        startActivity(i);
                    } catch (Exception e) {
                        Toast.makeText(getApplicationContext(),
                                "You dont have email client", Toast.LENGTH_SHORT).show();
                    }
                }
            });
  

EXTRA_STREAM····>内容:包含与之关联的数据流的URI   意图,与ACTION_SEND一起使用以提供正在发送的数据。

例如EXTRA_STREAM:

Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("image/jpg");
File photoFile = new File(getFilesDir(), "image.jpg");
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(photoFile));
startActivity(Intent.createChooser(shareIntent, "Share image using"));

<强>已更新

"mailto:"设置让你知道你在做什么样的计划(“给你的信息,你可以写任何你想要的东西”)

似乎有另一篇文章对你有一个关于Uri.parse的回答... What is Uri.parse in android

希望它有助于我的朋友!

答案 1 :(得分:0)

杰伊,我会尝试回答你的问题,如果你想了解更多,我建议你学习有关意图的官方文件here

  1.   

    什么是URI和Uri.parse()实际上是什么?

    URI是一串字符,用于标识Internet上的名称或资源。 Uri.parse(String uriString)解析给定的URI字符串和 以URI对象的形式返回uri。

  2.   

    Uri.parse(&#34; mailto :)做什么?

    mailto:是用于电子邮件的方案,类似于http:方案 互联网地址,它表示系统即将发生的事情 应该像电子邮件一样对待。

  3.   

    intent.putExtra(Intent.EXTRA_STREAM,imageURI)做什么?

    intent.putExtra()将指定的数据添加到intent对象中 由接收Activity使用。这里传递的数据是 imageURI