1.前言
該Demo的分析參考了mapdigit的關於Api Demos的文章,我在他的基礎上更進一步分析了相關知識點。
2.Demo效果
3.Demo分析
該樣本很簡單,功能只有一個,就是搜尋出所有的音頻檔案,廢話少說,直入主題:
先看布局,進入該樣本後只有一個TextView和一個Button屹立著:
點擊”Get Music”按鈕後,會搜尋當前裝置內的所有音頻檔案,並以列表方式顯示出來,單擊歌曲可以進行收聽,底欄的”OK”和”Cancel”按鈕功能如其說明:
布局代碼我們就不看了,很簡單只有一個按鈕,主要看一下該按鈕監聽器的實現,代碼如下:
private OnClickListener mGetMusicListener = new OnClickListener(){ public void onClick(View v) { Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("audio/*"); startActivity(Intent.createChooser(intent,"Select music")); } };
Intent大家都很熟悉,作用是用來啟用應用程式中活動,廣播,服務,Intent本身是一個包含被執行操作抽象描述的資料結構,Intent的目的是為了找到一個能夠正確回應Intent對象描述的組件。在本例中,intent對象採用了
public Intent(String action)
這一建構函式,而
Intent.ACTION_GET_CONTENT
一String變數描述了能正確回應該Intent描述的組件所應具備的一個action,這一action描述應當出現在目標組件的action描述中:
<intent-filter android:label="@string/xxxx"> <action android:name=" android.intent.action.GET_CONTENT " /> </intent-filter>
4.視頻講解:http://www.eyeandroid.com/thread-9861-1-1.html
5.這個Demo我們學會了:
1. Intent.ACTION_GET_CONTENT用法
http://www.eyeandroid.com/thread-9812-1-1.html
2. android之Itent.ACTION_PICKIntent.ACTION_GET_CONTENT妙用
http://www.eyeandroid.com/thread-9813-1-1.html