【问题标题】:Intent Action SEND always opens GMail意图操作 SEND 始终打开 GMail
【发布时间】:2013-12-18 17:11:38
【问题描述】:

我创建了一个发送意图来发送一个文件作为我的应用程序的导出。通常我可以使用选择器选择一个应用程序,但无需更改代码上的任何内容,选择器就消失了,每次 GMail 应用程序都会打开它。

这是选择器的外观: Screenshot 一位朋友在他的手机上为我测试了它(和我的一样 - Nexus 5)。

代码:

Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
Uri uri = Uri.fromFile(new File(mContext.getFilesDir() + "/" + mContext.getString(R.string.filename)));
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
shareIntent.putExtra(Intent.EXTRA_SUBJECT, mContext.getString(R.string.backup_email_subject, getFormattedTime()));
shareIntent.setType("text/rtf");
mContext.startActivity(Intent.createChooser(shareIntent, mContext.getString(R.string.backup_export)));

我重新启动了电话,从 GMail 中删除了所有数据,还检查了“始终打开”设置,但没有任何修复。我还删除了 EXTRA_SUBJECT 但它仍然会打开 GMail 而不会随时显示选择器。

我希望这不是一个糟糕的错误 :-) 有人遇到过这个问题吗?

【问题讨论】:

  • 您是否清除了 gmail 应用的默认设置?
  • 这些应用程序都不能访问您应用程序内部存储中的文件。使用FileProvider 将这些文件提供给第三方应用程序。
  • 你的意思是在App-Info下面?它告诉我“没有默认值”之类的,清除它的按钮被禁用
  • 当然他们可以访问 - 你看到选择器了吗?我已经做到了,而且奏效了。例如通过邮件发送。 - 您可以在 WORLD_READABLE_MODE 中写入文件
  • 我可以看到选择器活动..在 Nexus4 中验证

标签: android android-intent gmail send


【解决方案1】:

这是一个系统错误。它已在 Android 4.4.2 中修复

【讨论】:

    猜你喜欢
    • 2011-10-22
    • 1970-01-01
    • 1970-01-01
    • 2019-02-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-07
    • 2020-08-12
    • 1970-01-01
    相关资源
    最近更新 更多