- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在尝试在我的 Android 应用程序中创建一个 firebase JobDispatcher,它将在周一凌晨 3 点左右启 Action 业,无论作业何时创建。我已经看过使用 Joda-Time、Period 类和 TemporalAdjusters 的示例,但我正在尝试支持 API 级别 16 及更高级别,因此我需要一些可以与这些级别一起使用的东西。
目前我正在建立一项具有以下约束(除其他外)的新工作.setTrigger(Trigger.executionWindow(secondsUntilMonday, 秒直到星期一 + 容差间隔))
但我似乎找不到任何示例来说明如何将 secondaryUntilMonday 设置为调用该方法时与下一次星期一凌晨 3 点左右之间的秒数。
请帮忙!
最佳答案
这里有一个方法可以帮助你:
@Test
public void computeSecondsToMonday(){
Calendar c = Calendar.getInstance();
System.out.print("\r\n" + c.getTime().toString());
long millisNow = c.getTimeInMillis();
// let's advance to nex Monday
int dw = c.get(Calendar.DAY_OF_WEEK);
// days until monday
int daysToMonday = 0;
if(dw >= Calendar.MONDAY){
daysToMonday = Calendar.SATURDAY - dw + Calendar.MONDAY;
} else {
daysToMonday = Calendar.MONDAY - dw;
}
// now add days to Monday
c.add(Calendar.DAY_OF_MONTH, daysToMonday);
c.set(Calendar.HOUR_OF_DAY, 3);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
// we're in next Monday 3:00 AM
System.out.print("\r\n" + c.getTime().toString());
// compute number of millis until Monday
long millisInMonday = c.getTimeInMillis();
long millisToMonday = millisInMonday - millisNow;
// convert millis to sec
long secondsToMonday = millisToMonday / 1000;
System.out.print(String.format("\r\nSeconds Until Monday: %d", secondsToMonday));
}
以下是 Android Studio 中的 ExampleUnitTest 的输出:
Sat Oct 06 09:41:54 WEST 2018
Mon Oct 08 03:00:00 WEST 2018
Seconds Until Monday: 148686
只需根据您的需要调整方法,例如:
public long computeSecondsToMonday(){
···
return secondsToMonday;
}
希望这是您所需要的。
关于java - Android:如何获取从现在到下周一凌晨 3 点的时间(以秒为单位)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52676913/
好的,我已经使用了 stackoverflow 上的一些帖子来获得一些 XML 数据的半工作转换。 在 XML 数据源中,我获得日期和时间,作为单独的元素 - 它们采用 GMT 时间。 因此,为了转换
我正在使用一个简单的 JavaScript 在网站上显示我所在国家/地区的本地时间,但它似乎已损坏。午夜 12 点之后,时钟应该重置为 AM,但它继续显示 PM 时间(例如,下午 1 点而不是上午 1
我正在使用 Java - Spring - Quartz 调度程序。我想在凌晨 3 点之前运行作业,以下是我的 cron 表达式。 0 0 3 * * ? 谁能告诉我这是正确的吗?它会在 24 小时下
我在nodejs中有一个cron,每5小时执行一次,代码如下: cron.schedule("0 0 */5 * * *") 我希望它每天凌晨 2 点执行,我应该更改什么? 谢谢 最佳答案 你应该使这
我有此列“ALLTime”(int(4)类型)! 我的查询更新(针对account_vip表的所有ID) mysql_query(Update account_vip SET ALLTime = AL
我是一名优秀的程序员,十分优秀!