2012-02-15 22 views
0

私はバックグラウンドで曲を再生するサービスを作成しました。サービスで曲が変更されると、サービスからDataBase Cursorが必要になります。AIDLファイルのandroid.database.Cursorクラスのインポートが見つかりません

私は現在のソングのカーソルを返すサービス内の関数を持っています。

public Cursor getCursor() { 
    return nextmanagedCursor; 
} 

問題はAIDLインターフェイスにあり、AIDLインターフェイスで関数を宣言すると、次のエラーが発生します。

package com.bobcares.pixie.audio; 

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

interface IAudioInterface{ 

Cursor getCursor(); 

} 

これは以下のように

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

AIDLファイルの内容は、AIDLファイル

答えて

1

に非プリミティブデータ型を使用するための正しい方法は、実際に問題がCursorではないということですParcelableクラス、それはインターフェイスです。したがって、あなたはaidlを使ってそれを転送することはできません。ラッパーを使用する必要があります。しかし、私は彼らと一緒に作業していないため、あなたが必要とするラッパーの種類はわかりません。多分CrossProcessCursorがあなたが探しているものです。

+0

「CrossProcessCursor」もインターフェイスであることに注意してください。 – m0skit0

関連する問題