Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 初級開發 >> Android學習之Mediascanner實現機制

Android學習之Mediascanner實現機制

編輯:初級開發

以下內容是我在修改android1.6 Mediascanner bug的時候一點點總結,僅供參考。

Mediascanner掃描文件的方式共分兩種:全盤文件掃描、單一文件掃描

全盤文件掃描:
底層mediascanner.cpp通過C語言的API將文件信息(包括文件被修改時間)通過JNI傳遞給Java層的MediaScanner.Java。
再由MediaScanner.Java將文件信息寫入媒體數據庫。

單一文件掃描:
Java層應用調用MediaScanner.java掃描單一文件的函數,該函數通過Java的API獲取文件被修改時間,並寫入媒體數據庫。MP3下載結束後,DownloadService.java 調用MediaScanner.java掃描單一文件的函數,又因為Java的API獲取文件被修改時間與C語言API獲取的時間單位不一致,所以導致文件下載結束後寫入數據庫的文件被時間比實際值大出1000倍。


修改方案
在寫入數據庫前,先將文件被修改時間減小1000倍,然後在寫入媒體數據庫。
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved