轉載自:http://blog.csdn.net/spare_h/article/details/7466145
開發項目需求:
自己的應用中會緩存很多圖片到本地,不想讓系統圖庫掃描到自己的圖片或者不想對用戶瀏覽圖片造成影響。
方法:
.nomedia文件作用:應用中的圖片不被系統圖庫掃描
“.nomedia”文件放在任何一個文件夾下都會把該文件夾下所有媒體文件(圖片,mp3,視頻)隱藏起來不會在系統圖庫,鈴聲中出現。
新建.nomedia文件的方法:
1.Windows系統的新建文件不能新建.nomedia文件
新建方法:
Java
new File(dir, “.nomedia”).createNewFile();
2. CMD命令行
copy con .nomedia 回車
然后此時屏幕上有一個光標在閃爍,說明等待你輸入該文件內容,如果想建立空內容文件,這里就什么都不輸入,這時按下ctrl+Z鍵再回車,就生成一個空文件。該文件拷貝到需要隱藏圖片視頻的文件夾中。
3.Linux Shell
vi .nomedia
:wq
========================================================================
Android項目可用以下代碼實現新建.nomedia文件
manifest.xml申請讀寫權限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Java代碼:
File nomedia = new File( "xxx/xxx/" , ".nomedia"); try { if (!nomedia.exists()) nomedia.createNewFile(); FileOutputStream nomediaFos = new FileOutputStream(nomedia); nomediaFos.flush(); nomediaFos.close(); } catch (IOException e) { Log.e("IOException", "exception in createNewFile() method"); return; }
==========================================================================================
有些特定軟件會在緩存圖片文件夾自動生成名為“.nomedia”的文件,屏蔽了其他軟件的掃描。
代表此文件夾里面的MP3、MP4、RMVB、JPEG等圖片音頻視頻等媒體文件,所以系統圖庫看不到。
但一些特殊軟件如 快圖、MX Player也可以在設置中取消辨認這些文件!