Java 每24小时选择一次随机图像id

Java 每24小时选择一次随机图像id,java,android,Java,Android,我想每24小时选择一个图像id。例如,在凌晨12点这样的特殊时间,我可以选择一个随机id将其设置为imageview。 我知道如何使用报警管理器,但我不知道如何使用它 在这里,我只是选择了我的随机id,比如ans设置为SharedReferences,最后它得到了它。 我想每24小时做一次。 你能帮忙吗? 我是android新手 private void setBG(int bg) { SharedPreferences.Editor share1 = getSharedPrefer

我想每24小时选择一个图像id。例如,在凌晨12点这样的特殊时间,我可以选择一个随机id将其设置为imageview。 我知道如何使用报警管理器,但我不知道如何使用它

在这里,我只是选择了我的随机id,比如ans设置为SharedReferences,最后它得到了它。 我想每24小时做一次。 你能帮忙吗? 我是android新手

 private void setBG(int bg) {

    SharedPreferences.Editor share1 = getSharedPreferences("share1", Context.MODE_PRIVATE).edit();
    share1.putInt("bg", bg);
    share1.commit();
}

private int getBG() {
    SharedPreferences share1 = getSharedPreferences("share1", Context.MODE_PRIVATE);
    return share1.getInt("bg", R.drawable.pg19);
}

private void showBGS() {
    Random rand = new Random();
    int rndInt = rand.nextInt(18) + 1;
    String drawableName = "pg"+ rndInt;

    int resID = getResources().getIdentifier(drawableName, "drawable",  getPackageName());
    setBG(resID);

}

我不太熟悉任何安卓特有的东西。但是,如果您只需要每隔一段时间拉取随机选择的图像(并且永远不需要将其推送到某个地方,比如通知或其他东西),那么一个选项是在每次需要时基于午夜时间戳重新生成随机图像。类似于
newrandom(午夜)。nextInt(numberOfImages)
。午夜是几点?检查小时数一定很重要。你只需获取当前时间,将小时/分钟/秒设置为0(在你使用的任何datetime库中),然后从那时起使用毫秒。我对任何Android特定的东西都不太熟悉。但是,如果您只需要每隔一段时间拉取随机选择的图像(并且永远不需要将其推送到某个地方,比如通知或其他东西),那么一个选项是在每次需要时基于午夜时间戳重新生成随机图像。类似于
newrandom(午夜)。nextInt(numberOfImages)
。午夜是几点?检查小时数一定很重要,你只需获取当前时间,将小时/分/秒设置为0(在你使用的任何datetime库中),然后使用该时间的毫秒数。