【问题标题】:How to attach image in Gmail composer in android如何在 Android 的 Gmail 作曲家中附加图像
【发布时间】:2014-08-19 09:56:49
【问题描述】:

我必须在 Gmail 上共享图像,但我必须在 gmail 正文中附加图像。它显示无法文件附件 我的代码是--

    Intent intent = new Intent(Intent.ACTION_SEND);
    intent.setType("image/*");
    intent.putExtra(Intent.EXTRA_SUBJECT, "Report a problem");
    String[] recipients = { "EMAIL ID" };
    intent.putExtra(Intent.EXTRA_EMAIL, recipients);
    String imagePath = "IMAGE URL";

    File imageFileToShare = new File(imagePath);

    Uri uri = Uri.fromFile(imageFileToShare);
    intent.putExtra(Intent.EXTRA_STREAM, uri);

    startActivity(Intent.createChooser(intent, "Share Image!"));

【问题讨论】:

标签: android image gmail


【解决方案1】:
      gmail_share.setOnClickListener(new OnClickListener()
            {
                @Override
                public void onClick(View v)
    {
                    intent = new Intent(Intent.ACTION_SEND);
                    intent.setType("text/html");
                    intent.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(gmail1_text));
                    intent.putExtra(Intent.EXTRA_STREAM, shareImageUri);
                    intent.putExtra(Intent.EXTRA_SUBJECT, "subject_text");

                    try{
                        startActivity(intent);
                    } catch (android.content.ActivityNotFoundException ex) {
                        Utils.showToastMessage(getActivity(),"Gmail Application is not found,please             install and try again");
                    }
                }
            });




     class DownloadImageTask extends AsyncTask<String, Void, Bitmap> {


            @Override
            protected Bitmap doInBackground(String... params) {
                return getBitmapFromURL(params[0]);
            }

            @Override
            protected void onPostExecute(Bitmap result)
            {
                super.onPostExecute(result);
                if (result != null)
                {
                    shareImageUri=saveBitmapImage(result);
                }
            }
        }





     private Uri saveBitmapImage(Bitmap mSaveBit)
        {
            File imageFile = null;
            String root = Environment.getExternalStorageDirectory().toString();
            File myDir = new File(root + "/snappit");
            myDir.mkdirs();

            String fname = "image.jpg";
            imageFile = new File(myDir, fname);
            if (imageFile.exists())
                imageFile.delete();
            try {
                FileOutputStream fo = new FileOutputStream(imageFile);
                mSaveBit.compress(Bitmap.CompressFormat.JPEG, 100, fo);
                mSaveBit = null;
            } catch (Exception e) {
                e.printStackTrace();
            }
            return Uri.fromFile(imageFile);
        }


public  Bitmap getBitmapFromURL(String src){
        try {
            URL url = new URL(src);
            HttpURLConnection connection=(HttpURLConnection)url.openConnection();
            connection.setDoInput(true);
            connection.connect();
            InputStream input=connection.getInputStream();
            Bitmap myBitmap=BitmapFactory.decodeStream(input);
            return myBitmap;
        } catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }

【讨论】:

  • 嗨@swetha,你能提供完整的代码吗?
  • 嗨@swetha,我没有看到这个方法的实现 getBitmapFromURL(params[0])
猜你喜欢
  • 1970-01-01
  • 2019-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多