【问题标题】:Cannot Play audio file using installed media apps with Intent in android无法在 android 中使用带有 Intent 的已安装媒体应用程序播放音频文件
【发布时间】:2019-08-23 16:12:10
【问题描述】:

未播放意图的音频文件提供空值,未找到音乐应用程序,而其他一些应用程序能够通过使用不同的音乐应用程序播放它来做到这一点。但在我的情况下,它转到了 else 部分。

这不适用于 android PIE 尚未使用旧版本进行测试。

我们尝试了许多解决方案,例如 Android launching music player using intent 但它不起作用,也许 android 已经更新了音乐播放的使用。

Intent movieIntent = new Intent();
movieIntent.setPackage("com.google.android.music");
movieIntent.setAction(Intent.ACTION_VIEW);
movieIntent.setDataAndType(Uri.parse(vFilePath),"audio/*");
//Play Music With Installed Apps 
if(movieIntent.resolveActivityInfo( context.getPackageManager(),0)!=null){
   context.startActivity(movieIntent);
}
else{
   //
}

旧的解决方案都不起作用我正在寻找更新的解决方案。

【问题讨论】:

    标签: java android android-studio android-6.0-marshmallow


    【解决方案1】:

    第 1 步:摆脱:

    movieIntent.setPackage("com.google.android.music");
    

    第 2 步:使用具体的 MIME 类型,而不是 audio/*。它是您的内容,因此您知道 MIME 类型是什么。

    第 3 步:如果 vFilePath 应该是文件系统路径,请使用 FileProvider 获取要使用的 Uri,而不是 Uri.parse()。另请注意,您的 vFilePath 方法可能不适用于 Android 10+,因为您对文件系统的访问权限有限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 2016-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多