在Raspberry Pi上安装Android Things后,时间不正确。我的时区是GMT + 2,使用date +%Z
我看到RPi的时区是GMT。我该如何设置时区?
答案 0 :(得分:8)
更新(基于Michal Harakal的评论):
由于Developer Preview 6 TimeManager
类可以访问与时间相关的设备设置(NB!TimeManager
需要<uses-permission android:name="com.google.android.things.permission.SET_TIME" />
)。您可以使用.setTimeZone()
方法设置时区:
private void setupTimeZone(String timeZoneName) {
TimeManager timeManager = TimeManager.getInstance();
timeManager.setTimeZone(timeZoneName);
}
其中timeZoneName
是tz database time zones字符串之一,例如Kyiv(GMT +2,DST +3):
setupTimeZone("Europe/Kiev");
原始回答:
您可以通过AlarmManager.setTimeZone()
以this的Synesso回答中的TimeZone以编程方式设置它:
AlarmManager am = (AlarmManager)getContext().getSystemService(Context.ALARM_SERVICE);
am.setTimeZone("Europe/Madrid");
<uses-permission android:name="android.permission.SET_TIME_ZONE"/>
个文件中的AndroidManifest.xml
权限。
答案 1 :(得分:0)
我使用这些代码
TimeManager timeManager = TimeManager.getInstance();
timeManager.setTimeFormat(TimeManager.FORMAT_24);
// Set time zone to Eastern Standard Time
//timeManager.setTimeZone("America/New_York");
timeManager.setTimeZone("GMT");
calendar.setTime(date);
long timeStamp = calendar.getTimeInMillis();
timeManager.setTime(timeStamp);
拥有此权限: com.google.android.things.permission.SET_TIME