2012-02-15 70 views
0

我已經創建了一個將在後臺播放歌曲的服務。在服務中更改歌曲時,我需要Service中的DataBase光標。無法在AIDL文件中找到類android.database.Cursor的導入

我在服務中有一個函數返回當前樂曲的光標。

public Cursor getCursor() { 
    return nextmanagedCursor; 
} 

問題是在AIDL接口中,當我在AIDL接口中聲明它的功能時,它會給出以下錯誤。

Couldn't find import for class android.database.Cursor 

的AIDL文件內容如下圖所示

package com.bobcares.pixie.audio; 

import android.database.Cursor; /* Error in this line cannot import android.database.Cursor*/ 

interface IAudioInterface{ 

Cursor getCursor(); 

} 

是,這是使用非基本數據類型的AIDL文件

回答

1

其實問題在於Cursor是不正確的做法一個Parcelable類,它是一個接口。所以你不能使用aidl來傳輸它。你應該在它周圍使用包裝。但我不知道你需要什麼樣的包裝紙,因爲我沒有和他們合作過。也許CrossProcessCursor是你在找什麼。

+0

只是注意'CrossProcessCursor'也是一個接口。 – m0skit0 2014-10-03 09:34:34

相關問題