這是我的代碼:FileObserver修改不工作
public class SyncNotifyService extends Service {
private final static String TAG = "FileService";
SDCardListener fileObserver = null;
@Override
public IBinder onBind(Intent intent) {
return null;
}
public File getCacheDir() {
if (!StorageUtil.isExternalStorageAvailable()) {
return null;
}
File dir = new File(Environment.getExternalStorageDirectory(), "Cache");
return dir;
}
@Override
public void onCreate() {
super.onCreate();
Log.d(TAG, "onCreate");
fileObserver = new SDCardListener(FileCache.getCacheDir().getPath(), FileObserver.MODIFY);
fileObserver.startWatching();
}
class SDCardListener extends FileObserver {
public SDCardListener(String path, int mask) {
super(path, mask);
}
@Override
public void onEvent(int event, String path) {
final int action = event & FileObserver.ALL_EVENTS;
switch (action) {
case FileObserver.MODIFY:
Log.d(TAG, "event: MODIFY");
break;
}
}
}
}
您好,我使用此代碼通知目錄。但我發現它永遠不會調用onEvent使用FileObserver.MODIFY參數,有人知道如何編寫正確的代碼? 我的Android版本是4.1.1