为什么我的共享方法(通过电子邮件,社交媒体等共享)不起作用? Android工作室

时间:2018-07-20 02:12:57

标签: android android-studio share

所以我有这种方法可以通过电子邮件,社交媒体,Whatsapp等进行共享。

但是,当我单击与共享方法关联的按钮时,它不起作用。你们可以帮我吗?

有一个类似吐司的弹出窗口,内容如下: 通过ClipData.Item.getUri()在应用程序之外公开的file // storage / emulated / 0 / Android / data / com.project.myapp / cache / sample.png。

这是我的共享方法:

  private void shareImage() {
    try {
        //Get title, description, price, category and save in string
        String s = detTitleTv.getText().toString() + "\n" + detDescriptionTv.getText().toString()
                + "\n" + detPriceTv.getText().toString() + "\n" + detCategoryTv.getText().toString()
                + "\n" + detLocationTv.getText().toString();

        File file = new File(getExternalCacheDir(), "sample.png");
        FileOutputStream fOut = new FileOutputStream(file);
        bitmap.compress(Bitmap.CompressFormat.PNG, 100, fOut);
        fOut.flush();
        fOut.close();
        file.setReadable(true,false);
        //Intent to share image and text
        Intent intent = new Intent(Intent.ACTION_SEND);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        intent.putExtra(Intent.EXTRA_TEXT, s);//Put the text
        intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
        intent.setType("image/png");
        startActivity(Intent.createChooser(intent,"Share via"));

    } catch (Exception e) {
        Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
    }
}

0 个答案:

没有答案