【问题标题】:Intent to play sound from raw folder打算从原始文件夹播放声音
【发布时间】:2012-04-12 15:43:24
【问题描述】:

我想使用系统音频/视频播放器播放原始文件夹中的声音,但在触发 Intent 时,我不断收到相同的“未找到处理 Intent 的活动”消息(异常)。

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("android.resource://mypackagename/" + R.raw.audiofile), "audio/*"); 
startActivity(intent);

有什么想法吗?谢谢!

【问题讨论】:

  • R.raw.audiofile 是一个整数。不是文件名。

标签: android android-intent


【解决方案1】:

intent 系统的工作方式是,您的应用程序基本上是在说:“嘿,Android,我有这个 url,我想查看它。手机上是否有可以执行此操作的应用程序?”

对于 http 网址,您已经在手机上安装了浏览器,对于 google play 网址,它会向您显示 google play 商店作为一个选项等。如果您的手机上没有应用程序将处理音频资源(默认情况下没有安装任何对 android 意味着什么)。

就像 Dirk 说的,你必须使用 MediaPlayer 来播放你的资源。 MediaPlayer 页面非常漂亮:http://developer.android.com/reference/android/media/MediaPlayer.html

【讨论】:

    【解决方案2】:

    请尝试以下操作(其中 soundfile 是原始文件夹中的文件名,不带扩展名。请仅使用小写字符):

    MediaPlayer player = MediaPlayer(this,R.raw.soundfile);
    
    player.prepare();
    player.start();
    

    。 . .

    player.stop();
    player.reset();
    player.release();
    player = null;
    

    找到here

    【讨论】:

      猜你喜欢
      • 2012-08-29
      • 1970-01-01
      • 2011-04-21
      • 2014-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多