Ответ 1
System.currentTimeMillis()
дает вам количество миллисекунд с 1 января 1970 года 00:00:00 по UTC. Причина, по которой вы видите местное время, может быть связана с тем, что вы конвертируете экземпляр Date
в строку перед его использованием. Вы можете использовать DateFormat
для преобразования Date
в String
в любой часовой пояс:
DateFormat df = DateFormat.getTimeInstance();
df.setTimeZone(TimeZone.getTimeZone("gmt"));
String gmtTime = df.format(new Date());
Также см. этот связанный вопрос.