白菜菜和向肉肉 2020-08-24 18:09 采纳率: 0%
浏览 206

【已解决】为什么Android分享txt文件至第三方应用不成功?

目的是,在我的App内转发,刚刚存储于sd卡内的txt文件,至一个第三方App。

问题:转发到第三方App不成功,在选择转发应用界面选中该App后,无反应。
测试发现转发到QQ、微信都正常被发送;并且在QQ、微信内转发至上述第三方App是正常的。

我就寻思着应该是我转发代码没写好,转发这块确实是才刚接触,唔...可以帮忙找找问题么...

        Intent intent = new Intent();
        intent.addCategory("android.intent.category.DEFAULT");
        intent.setAction(Intent.ACTION_SEND);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
          Uri contentUri =
              FileProvider.getUriForFile(
                  activity.getApplicationContext(),
                  BuildConfig.APPLICATION_ID + ".provider",
                  activity.file);
          intent.putExtra(Intent.EXTRA_STREAM, contentUri);
        } else {
          intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(activity.file));
        }
        intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        intent.setType("text/plain");
        activity.startActivity(Intent.createChooser(intent, "分享"));

半天后,我类比了“用WPS打开txt”,结合资料实现了原本目的。

更新代码:

        Intent intent = new Intent();
        intent.setAction(Intent.ACTION_VIEW);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        Uri contentUri;
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
          contentUri =
              FileProvider.getUriForFile(
                  activity.getApplicationContext(),
                  BuildConfig.APPLICATION_ID + ".provider",
                  activity.file);
        } else {
          contentUri = Uri.fromFile(activity.file);
        }
        intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
        intent.setDataAndType(contentUri, "text/plain");
        activity.startActivity(Intent.createChooser(intent, "分享"));

感谢回答过我问题的人~

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-08-24 20:04
    关注

    是不是特定的手机或者app 有问题,这种情况考虑是权限的问题。

    评论

报告相同问题?

悬赏问题

  • ¥15 如何用matlab提取urdf转化成DH参数
  • ¥15 Nessus漏扫报告 主机信息里没有DNS name应该怎么办?
  • ¥15 怎么样实现iOS手机单击多点触控宏啊?
  • ¥15 visionmamba的训练报错
  • ¥100 文本摘要任务泄露问题
  • ¥15 js调用对象时报错,但是我看是有这个对象的,是不是调用方法不对
  • ¥15 希沃零度软件界面按钮传参分析
  • ¥15 可任意设置即使长度的倒计时器电路设计
  • ¥15 MusePose 部署安装问题,安装后无法启动
  • ¥15 Psexec获得电脑system权限该怎么操作,有偿