0
我需要始終跟蹤從整個文件系統中刪除的圖像和視頻(即使我的UI應用程序未運行),直到手機啓動後才關閉直到關閉。爲此,我使用一個服務和FileObserver。不幸的是下面所附的代碼無法正常工作(我不調試器獲取的方法Android:FileObserver未通知FS更改
公共無效的onEvent(INT事件,字符串文件)
雖然我做了一些改動FS ...的服務被啓動,顯然onStarted()方法被執行...
請幫助
public class DataChangeListener extends Service {
private static Context context;
@Override
public IBinder onBind(Intent intent) {
context = this;
return null;
}
@Override
public void onStart(Intent intent, int startId) {
super.onStart(intent, startId);
context = this;
FileObserver observer = new FileObserver("/") {
@Override
public void onEvent(int event, String file) {
System.out.println();
}
};
observer.startWatching();
}
@Override
public boolean onUnbind(Intent intent) {
return super.onUnbind(intent);
}
}
通過從onStartCommand()返回START_STICKY可以使服務始終保持活動狀態,在這種情況下,即使我在DDMS中殺死它,它也會立即被系統重新啓動。如果用戶明確停止服務,那是另一回事。我認爲這裏的問題是缺乏權限。 –