デフォルトのコンテンツプロバイダMediaStore.AudioからCursorにいくつかのパラメータをロードしようとしていますが、コードをデバッグするときにはmanagedQueryだけで実行が停止します。このメソッドは、managedQuery以外の方法では実行できません。私は、このメソッドは廃止され、使用すべきではありませんが、私が使用しているAPIレベルで私が持っている唯一のオプションであるドキュメントで読んだMediaStore.Audioプロバイダからの情報でAndroidにカーソルをロード
Uri exAudioUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
String[] projection = new String[] {
MediaStore.Audio.Media._ID,
MediaStore.Audio.Media.DISPLAY_NAME,
MediaStore.Audio.Media.DATA,
MediaStore.Audio.Media._COUNT,
};
Cursor cExAudio = managedQuery(exAudioUri, projection, null, null, MediaStore.Audio.Media.DISPLAY_NAME + " DESC");
:ここでは、クエリとのコードです。
あなたはそれがmanagedQueryがnullを返しているかどうかを返す確認することができます。 –
デバッグ中にmanagedQueryが次の例外を返します:android.database.sqlite.SQLiteException:列がありません:_count:コンパイル中:SELECT _id、_display_name、_data、_countオーディオからORDER BY _display_name DESC – user673847