У меня проблема с настройкой миллисекунд и чтением на Android 2.3.4 на Nexus One Это код:
File fileFolder = new File(Environment.getExternalStorageDirectory(), appName + "/"
+ URLDecoder.decode(folder.getUrl()));
if (fileFolder != null && !fileFolder.exists()) {
fileFolder.setLastModified(1310198774);
fileFolder.mkdirs();
fileFolder.setLastModified(1310198774);
}
if (fileFolder != null && fileFolder.exists()) {
long l = fileFolder.lastModified();
}
В этом небольшом тесте я пишу 1310198774, но результат, возвращаемый функцией lastModified (), равен 1310199771000.
Даже если я вырезал завершающую «000», разница в несколько минут.
Мне нужно синхронизировать файлы между веб-службой и устройством Android. Миллис последней модификации являются частью данных, отправляемых этой службой. Я устанавливаю миллисекунды для созданных / скопированных файлов и папок, чтобы проверить, должен ли файл / папка быть перезаписано.
Все работает, НО миллисекунды, возвращаемые файловой системой, отличаются от установленных значений.
Я почти уверен, что что-то не так с моим кодом, но я не могу его найти.
Заранее большое спасибо. HJW