Action_Send如何正确地做到这一点?

时间:2014-01-28 02:39:03

标签: android android-intent action share send

您好我想在我的应用程序中执行以下操作:当用户按下发送按钮时,它会保存相机预览图像,然后用户就可以发送到其他设备。到目前为止,我的代码如下:

    share.setOnClickListener(new View.OnClickListener() 
    {

        @Override
        public void onClick(View v) 
        {
            Uri imageUri = Uri.parse("android.resource://your.package/drawable/flash_on");

            Intent share = new Intent(Intent.ACTION_SEND);
            share.setType("image/png");                                                                                                                                 
            //Uri screenshotUri = Uri.parse(pictureFile.getAbsolutePath());
            share.putExtra(Intent.EXTRA_STREAM, imageUri);
            startActivity(Intent.createChooser(share, "Share Image"));
        }
     });

仅使用图片flash_on.png进行测试,但无法正确发送。 我的清单文件有:

<action android:name="android.intent.action.SEND" />

并且:

<category android:name="android.intent.category.DEFAULT" />

1 个答案:

答案 0 :(得分:0)

            Intent i = new Intent(Intent.ACTION_SEND);
            i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
            i.setType("image/*");
            Uri uri = Uri.fromFile(pictureFile);
            i.putExtra(Intent.EXTRA_STREAM, uri);
            startActivity(Intent.createChooser(i, "Share image using"));