鴻蒙OS 媒體掃描服務(wù)操作開發(fā)指導(dǎo)

2020-09-18 14:44 更新

場(chǎng)景介紹

媒體掃描服務(wù)從新創(chuàng)建或下載的媒體文件中讀取元數(shù)據(jù),并將文件添加到媒體數(shù)據(jù)庫中。

接口說明

接口名 描述
performLoggerFile(String path, String mimeType) 請(qǐng)求通過文件的路徑和類型掃描一個(gè)媒體文件。
performLoggerFile(Context context, String[] paths, String[] mimeTypes, AVLogCompletedListener callback) 一次掃描多個(gè)媒體文件。
connect() 連接到掃描服務(wù)。
disconnect() 從掃描服務(wù)斷開連接。
isConnected() 檢查掃描服務(wù)是否已連接。

開發(fā)步驟

媒體掃描服務(wù)分為動(dòng)態(tài)調(diào)用和靜態(tài)調(diào)用,以掃描文件為例:

動(dòng)態(tài)調(diào)用

  1. 初始化 AVLoggerConnection,并注冊(cè)回調(diào)函數(shù)。

   public class ZSacnnerTest implements AVLoggerScannerConnectionClient {
       private AVLoggerConnection zScanConn;
       public ZSacnnerInterTest(Context context) {
           // 實(shí)例化  
           zScanConn = new AVLoggerConnection(context, this);    
       }
       // ...
   }

  1. 連接媒體掃描服務(wù)。

   zScanConn.onConnect(); // 連接掃描服務(wù)

  1. 在onLoggerConnected回調(diào)函數(shù)中執(zhí)行掃描。

   @Override
   public void onLoggerConnected() {
       zScanConn.performLoggerFile(filePaths[i], mimeTypes[i]); // 服務(wù)回調(diào)執(zhí)行掃描    
   }

  1. 在 onLogCompleted 回調(diào)函數(shù)中通知掃描結(jié)果。

   @Override
   public void onLogCompleted(String path, String uri) {
        // 回調(diào)函數(shù)返回URI的值
        zScanConn.disConnect(); // 斷開掃描服務(wù)        
   }

靜態(tài)調(diào)用

  1. AVLoggerConnection 靜態(tài)方法 performLoggerFile, 掃描結(jié)果在 onLogCompleted 中通知。

   AVLoggerConnection.performLoggerFile(this, filePaths, null, new AVScanCompletedListener(){
       @Override    
       public void onLogCompleted(String path, String uri) {

    
       }
   });
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)