在我的应用程序中,当捕捉到照片时,我需要增加照片的数量。因此,我为FileObserver设置了一个DCIM directory。它监视捕捉到的照片。
但是,当我卸载SD卡时,这个FileObserver停止监视,因为DCIM directory不再存在。当我挂载SD卡时,在获得FileObserver意图之后,我再次尝试注册android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE。但是FileObserver没有注册。
我的问题是:
FileObserver手表吗?发布于 2012-06-25 15:22:24
您可以创建一个新的BroadcastReceiver来监视SD挂载/卸载事件。然后,在挂载事件上,告诉您的FileObserver重新开始监视DCIM目录。
您需要指定意图筛选器来监视您想要的事件:
IntentFilter filter = new IntentFilter();
filter.addAction(Intent.ACTION_MEDIA_MOUNTED);
filter.addAction(Intent.ACTION_MEDIA_REMOVED);官方API引用中的这个片段显示了如何监视外部存储的状态。
https://stackoverflow.com/questions/10629706
复制相似问题