package com.example.ipcplayer.manager; import java.util.ArrayList; import java.util.List; import com.example.ipcplayer.localfragment.ItemData; import com.example.ipcplayer.object.MusicFile; import com.example.ipcplayer.provider.MusicDB; import com.example.ipcplayer.provider.MusicDBHelper; import com.example.ipcplayer.provider.MusicDBManager; import com.example.ipcplayer.utils.LogUtil; import android.content.Context; import android.database.Cursor; public class LocalMusicManager{ private Context mContext; private static String TAG = LocalMusicManager.class.getSimpleName(); private MusicDBManager mMusicDBManager ; // private static LocalMusicManager mInstance; public LocalMusicManager(Context context){ LogUtil.d(TAG + " init object "); mContext = context; } // public static LocalMusicManager getInstance(Context context){ // synchronized(mInstance){ // if(mInstance == null){ // mInstance = new LocalMusicManager(context); // } // } // return mInstance; // } public String getPlayPath(MusicFile musicFile){ return musicFile.path; } public String getPlayPath(long id){ return null; } /** * get songid list * @param cursor * @return long[] */ public long[] getSongIdList(Cursor cursor){ long[] list ; if(cursor == null){ return null; } try { int length = cursor.getCount(); list = new long[length]; if (length > 0) { for (int i = 0; i < length; i++) { cursor.moveToPosition(i); list[i] = cursor .getLong(cursor .getColumnIndexOrThrow(MusicDB.MusicInfoColumns._ID)); } } } catch (Exception e) { e.printStackTrace(); return null; }finally { if (cursor != null) { cursor.close(); cursor = null; } } return list; } public Cursor getAllSongCursor(){ LogUtil.d(TAG + " getAllSongCurso "); String table = MusicDBHelper.TABLE_MUSICINFO; LogUtil.d(TAG + " table = " + table); String where = MusicDB.MusicInfoColumns._ID + "> 0 "; LogUtil.d(TAG + " where = " + where); String[] columns = new String[] { MusicDB.MusicInfoColumns._ID, MusicDB.MusicInfoColumns.MUSICNAME, MusicDB.MusicInfoColumns.ARTIST }; LogUtil.d(TAG + " columns = " + columns.toString()); Cursor c = null ; try { c = MusicDBManager.getInstance(mContext).query(table, columns, where, null, null, null, MusicDB.MusicInfoColumns._ID); } catch (Exception e) { LogUtil.d(TAG + " getAllSongCursor query error !"); e.printStackTrace(); } return c; } public ArrayList<ItemData> getLocalMusicItems(){ LogUtil.d(TAG + " getLocalMusicItems "); ArrayList<ItemData> arrayList = new ArrayList<ItemData>(); ItemData itemData = null ; itemData = new ItemData(); itemData.mType = ItemData.DATATYPE_ALLSONG_LIST; LogUtil.d(TAG + " itemData.mType = " + itemData.mType); arrayList.add(itemData); return arrayList; } }