Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 高級開發 >> Android 文件夾權限引起的MediaPlayer播放不正常

Android 文件夾權限引起的MediaPlayer播放不正常

編輯:高級開發

寫了一個Ap,在程序運行時會解壓一些聲音文件到/data/data/app_dir目錄。

  在調用Mediaplayer來播放這些文件時,總是提示失敗,在網上搜到有提到權限的問題,把目錄改成所有人可讀寫即可播放,驗證後ok。

  分析原因是MediaPlayer是個服務,是在另一個進程也是另一個用戶的,默認創建的聲音文件對其是不可讀的,導致無法讀取數據,在MediaPlayer.prepare()時總是失敗。

  但是每次修改目錄的權限是不現實的,所以可以先把文件打開,然後把文件句柄傳給MediaPlayer,這是MediaPlayer就可以通過此句柄獲取到數據。

  Java代碼

  MediaPlayer.setDataSource((new FileInputStream(new File(soundFilePath))).getFD());

  MediaPlayer.setDataSource((new FileInputStream(new File(soundFilePath))).getFD());

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved