編輯:關於Android編程
好久沒有寫文章了,本來想寫的東西,時間一長,就感覺不想寫了,沒什麼用,到用時,又不知道去哪找了或怎麼解決。
有一句話說的好啊,好記性不如爛筆頭。
我要做到善於總結,及時整理,額.........................。
好了,廢話不多少,進入正題。
做了一個關於音樂播放器的小東西,需要讀取文件(問題來了......),我查到android 4.4 版本關於二級外部存儲器讀寫如下:
我編寫的軟件存在這樣的問題,能夠正常的運行,sdcard中有.mp3文件,不報錯,但在4.4中就是現實不出來列表內容,2.2可以顯示。
於是我抱著試試的心態,加入了如下權限。<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PHByZSBjbGFzcz0="brush:java;">
沒想到,成功了。有圖有真相:
篩選文件用的FilenameFilter借口accept(File file, String name)方法,沒有關於寫入的吧。
這樣看來上面那條權限,不僅是針對於寫的,還有讀,不知道這麼說對不對啊,來個大神吧。
代碼如下:
MainActivity.java
public class MainActivity extends ListActivity { //public final static String Path = "/sdcard/"; ArrayAdapterarrayAdapter = null; List stringList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); stringList = new ArrayList (); showMusicList(); arrayAdapter = new ArrayAdapter (MainActivity.this, android.R.layout.simple_list_item_1, stringList); setListAdapter(arrayAdapter); } public void showMusicList() { File[] files = null; File myFile = Environment.getExternalStorageDirectory();//獲取sdcard路徑 File file = new File(myFile.getAbsolutePath()); files = file.listFiles(new Filename()); //篩選文件 if (files != null) { for (int i = 0; i < files.length; i++) { File t_File = files[i]; stringList.add(t_File.getName()); } } } class Filename implements FilenameFilter { @Override public boolean accept(File file, String name) { // TODO Auto-generated method stub return name.endsWith(".mp3"); } } }
.
我們分析一些源碼的實現.首先從PMS服務開始.PMS服務即PackageManagerService,主要用來進行APK的管理任務.但是今天,我們並不直接分析PMS的源碼
前言筆者最近離職找工作快兩周了,這段時間陸陸續續也見識了北上廣這邊跟西部城市對待技術理念的差異和學習深度.俗話說:知恥而後勇,在經歷了面試被虐得體無完膚的過程後,我也找到
當ListView實例addheaderView()或者addFooterView後,再通過setAdapter來添加適配器,此時在ListView實例變量裡保存的適配器
唉,這個問題困擾很久了,可能原因呢也是有很多種的,就個人遇到的問題,在這裡給大家分享下:運eclipse的時候,就是不能運行出android avd(虛擬機