編輯:Android開發教程
代碼和注釋如下:
private Cursor getCursor(String filePath) { String path = null; Cursor c = getContentResolver().query( MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null, MediaStore.Audio.Media.DEFAULT_SORT_ORDER); // System.out.println(c.getString(c.getColumnIndex("_data"))); if (c.moveToFirst()) { do { // 通過Cursor 獲取路徑,如果路徑相同則break; System.out.println("////////"+filePath); path = c.getString(c .getColumnIndexOrThrow(MediaStore.Audio.Media.DATA)); System.out.println("?????????"+path); // 查找到相同的路徑則返回,此時cursorPosition 便是指向路徑所指向的Cursor 便可以返 回了 if (path.equals(filePath)) { // System.out.println("audioPath = " + path); // System.out.println("filePath = " + filePath); // cursorPosition = c.getPosition(); break; } } while (c.moveToNext()); } // 這兩個沒有什麼作用,調試的時候用 // String audioPath = c.getString(c // .getColumnIndexOrThrow(MediaStore.Audio.Media.DATA)); // // System.out.println("audioPath = " + audioPath); return c; } private String getAlbumArt(int album_id) { String mUriAlbums = "content://media/external/audio/albums"; String[] projection = new String[] { "album_art" }; Cursor cur = this.getContentResolver().query( Uri.parse(mUriAlbums + "/" + Integer.toString(album_id)), projection, null, null, null); String album_art = null; if (cur.getCount() > 0 && cur.getColumnCount() > 0) { cur.moveToNext(); album_art = cur.getString(0); } cur.close(); cur = null; return album_art; } private void getImage(){ Cursor currentCursor = getCursor("/mnt/sdcard/"+mp3Info); int album_id = currentCursor.getInt(currentCursor .getColumnIndexOrThrow(MediaStore.Audio.Media.ALBUM_ID)); String albumArt = getAlbumArt(album_id); Bitmap bm = null; if (albumArt == null) { mImageView.setBackgroundResource(R.drawable.staring); } else { bm = BitmapFactory.decodeFile(albumArt); BitmapDrawable bmpDraw = new BitmapDrawable(bm); mImageView.setImageDrawable(bmpDraw); } }
前面提到AndroidGraphics2DTutorial說過它是ListActivity派生出來的。ListActivity中顯示的是ListView,ListView
前言Android Build 系統是 Android 源碼的一部分。關於如何獲取 Android 源碼,請參照 Android Source 官方網站:http://s
Android中的本地窗口FramebufferNativewindow 1.1 Android中的本地窗口在OpenGL的學習過程中,我們不斷提及&ldquo
一直以來,關於蘋果iOS和谷歌Android誰更好用的爭論從來沒有間斷過,它們不僅代表了世界上兩個最先進、最受歡迎的移動平台,同時也是蘋果和谷歌兩家科技巨頭品味、風格的不