设置 Android Things 时区

2024-01-11

在 Raspberry Pi 上安装 Android Things 后,时间不正确。我的时区是 GMT+2,并且使用date +%Z我看到 RPi 的时区是 GMT。如何设置时区?


更新(基于米哈尔·哈拉卡尔 https://stackoverflow.com/users/211886/michal-harakal的评论):

Since 开发者预览版 6 https://android-developers.googleblog.com/2017/11/android-things-developer-preview-6.html TimeManager https://developer.android.com/reference/com/google/android/things/device/TimeManager类提供对与时间相关的设备设置的访问(注意!TimeManager需要<uses-permission android:name="com.google.android.things.permission.SET_TIME" />)。您可以使用.setTimeZone() https://developer.android.com/reference/com/google/android/things/device/TimeManager#setTimeZone(java.lang.String)时区设置方法:

private void setupTimeZone(String timeZoneName) {
    TimeManager timeManager = TimeManager.getInstance();
    timeManager.setTimeZone(timeZoneName);
}

where timeZoneName是其中之一tz 数据库时区 https://en.wikipedia.org/wiki/List_of_tz_database_time_zones字符串,例如为了Kyiv https://www.google.com.ua/maps/@50.450467,30.5224943,8z?hl=en(格林威治标准时间 +2,夏令时 +3):

setupTimeZone("Europe/Kiev");

原答案:

您可以通过以下方式从应用程序以编程方式设置它AlarmManager.setTimeZone() https://developer.android.com/reference/android/app/AlarmManager.html#setTimeZone(java.lang.String)this https://stackoverflow.com/a/27540304/6950238的答案Synesso https://stackoverflow.com/users/45525/synesso:

AlarmManager am = (AlarmManager)getContext().getSystemService(Context.ALARM_SERVICE);
am.setTimeZone("Europe/Madrid"); 

with <uses-permission android:name="android.permission.SET_TIME_ZONE"/>的许可AndroidManifest.xml file.

List of TimeZone https://en.wikipedia.org/wiki/List_of_tz_database_time_zones names.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

设置 Android Things 时区 的相关文章

随机推荐