我在覆盆子皮上使用Android-Things。当启动设备的时候。如果连接到网络,
我尝试TimeManager API。
private void setupTimeZone(String timeZoneName) {
TimeManager timeManager = TimeManager.getInstance();
timeManager.setTimeFormat(TimeManager.FORMAT_24);
timeManager.setTimeZone(timeZoneName);
}
setupTimeZone("Asia/Seoul");如果网络连接到Raspberry pi,设置时间是没有问题的。
但我的问题只是在启动设备时,而不是连接网络时。
如果设备不连接网络。基本上时间被设置为Jan 1, 2009 09:00
若要更改默认日期,需要修改哪些文件?
谢谢。
发布于 2018-08-17 08:06:15
对于设置时间,可以使用TimeManager.setTime()方法:
要使用TimeManager控制设备设置,首先在AndroidManifest.xml中请求权限
com.google.android.things.permission.SET_TIME,然后获取类的实例并设置适合应用程序的属性。 timeManager.setTimeFormat(TimeManager.FORMAT_24);// Set时区到东部标准时间timeManager.setTimeZone(“美国/纽约”);//设定到中午日历的时钟时间= Calendar.getInstance();calendar.set(Calendar.MILLISECOND,0);calendar.set(Calendar.SECOND,0);calendar.set(Calendar.MINUTE,0);calendar.set(Calendar.HOUR_OF_DAY,12);long timeStamp = calendar.getTimeInMillis();timeManager.setTime(timeStamp);
但是覆盆子Pi 3没有内置的实时时钟( RTC ),也不可能在没有网络连接或使用外部电池支持的RTC模块(如DS1307或DS3231或许多其他模块)的情况下获得实际的当前时间(也可以查看这手册)。RTC模块通常使用I2C接口,因此您应该将RTC模块连接到您的板上,最初(当您的板连接到网络并知道当前时间时)通过I2C为其设置实际时间,然后在启动时从RTC模块获取当前时间并将其设置为Android Things系统,如上面的示例所示。如何通过DS3231控制RTC通过I2C你可以找到这里。在该示例中,您可以找到用户空间驱动程序的内部部件,您可以找到那里。
https://stackoverflow.com/questions/51887326
复制相似问题