public ListenableFuture<?> fakeUpload() {
ImmutableList.Builder<Keys> builder = ImmutableList.builder();
for (int i = 0; i < 14; i++) {
byte[] bytes = new byte[KEY_SIZE_BYTES];
RAND.nextBytes(bytes);
builder.add(
Keys.newBuilder()
.setKeyBytes(bytes)
.setIntervalNumber(FAKE_INTERVAL_NUM)
.build());
}
return doUpload(builder.build(), true);
}
我希望这些密钥每天仅上传一次。 我该怎么办?
答案 0 :(得分:3)
现在,您可以在想要的应用程序活动中编写此代码,也可以在其中创建服务并在其中编写代码:-
private fun shouldUploadFakeKeys(): Boolean {
if (sharedPreferenceUtil.getInt(Constants.EXTRA_DAILY_KEYS_UPLOAD) != getTodaysDate()) {
sharedPreferenceUtil.putBoolean(Contants.EXTRA_HAS_FAKE_KEYS_UPLOADED_TODAY,false)
return true
} else if (sharedPreferenceUtil.getBoolean(Contants.EXTRA_HAS_FAKE_KEYS_UPLOADED_TODAY)) {
return false
}
return true
}
fun getTodaysDate(): Int {
return ZonedDateTime.now().dayOfMonth
}
如果还没有常量文件,则创建一个常量文件:-
Constants.kt
class Constants{
companionObject{
const val EXTRA_DAILY_KEYS_UPLOAD = "EXTRA_DAILY_KEYS_UPLOAD"
const val EXTRA_HAS_FAKE_KEYS_UPLOADED_TODAY = "EXTRA_HAS_FAKE_KEYS_UPLOADED_TODAY"
}
}