1、在AndroidManifest.xml 加入读取外部存储器权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
2、注册动态广播
public static void register(Context context){ IntentFilter filter = null; filter = new IntentFilter(); filter.addAction(Intent.ACTION_MEDIA_MOUNTED); //接收U盘挂载广播 filter.addAction(Intent.ACTION_MEDIA_REMOVED); //接收U盘卸载广播 filter.addDataScheme("file"); context.registerReceiver(mSdcardReceiver, filter,"android.permission.READ_EXTERNAL_STORAGE",null); } static BroadcastReceiver mSdcardReceiver = new BroadcastReceiver(){ @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub if(intent.getAction().equals(Intent.ACTION_MEDIA_MOUNTED)){ Toast.makeText(context, "path:"+intent.getData().getPath(), Toast.LENGTH_SHORT).show(); }else if(intent.getAction().equals(Intent.ACTION_MEDIA_REMOVED)){ Log.i("ants", "remove ACTION_MEDIA_REMOVED"); } } };