通过Intent发送文件失败三星4.0.4

时间:2016-09-25 16:05:47

标签: android android-intent uri

我有这套代码可以在我拥有的每台Android设备上完美运行....除了三星Galaxy Tab 10.1(图)。此代码旨在将日志文件发送给我以进行调试。

当我尝试将文件共享到Gmail时,它说“无法附加文件”

当我尝试与之分享时,Google云端硬盘崩溃了。

Superbeam说你试图附加的文件不存在。

通过蓝牙共享失败

public static void sendLogs(Context ctx) {
        Intent intent = new Intent(Intent.ACTION_SEND);
        intent.setType("text/plain");
        intent.putExtra(Intent.EXTRA_EMAIL, new String[] { ctx.getString(R.string.logs_email_receiver) });
        intent.putExtra(Intent.EXTRA_SUBJECT, ctx.getString(R.string.logs_email_title));

        Uri fileUri = FileProvider.getUriForFile(ctx, "com.app.test", getFile(ctx));
        intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        intent.putExtra(Intent.EXTRA_STREAM, fileUri);
        ctx.startActivity(Intent.createChooser(intent, ctx.getString(R.string.logs_chooser_title)));
    }

private static File getFile(Context ctx) {
    return new File(ctx.getFilesDir(), log_name);
}

我觉得这是一个三星的错误,但文件Uri是相同的。自API 1以来,这些标志都存在,我不知道它还能是什么。

0 个答案:

没有答案