-[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":994,"versionName":"2110260944","enabled":true,"outputFile":"ICSer_V994_2110260944_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V994_2110260944_release.apk","properties":{}}]
\ No newline at end of file
+[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":997,"versionName":"2110261159","enabled":true,"outputFile":"ICSer_V997_2110261159_release.apk","fullName":"release","baseName":"release"},"path":"ICSer_V997_2110261159_release.apk","properties":{}}]
\ No newline at end of file
}
private long lastSendTime = 0;
+ private Temperature lastTemperature;
private final ITempSensorCallback.Stub mRemoteCallback = new ITempSensorCallback.Stub() {
@Override
public void onTemperatureGet(Temperature temperature) {
ICLogger.d("onTemperatureGet ==> " + temperature);
long currentTime = System.currentTimeMillis();
- //30秒内有多次发送,则不在发送了
- if (lastSendTime != 0 && currentTime - lastSendTime < 30 * 1000) {
+ boolean isSame = checkLastTemperature(lastTemperature, temperature);
+ //120秒内有多次发送,则不在发送了
+ if (lastSendTime != 0
+ && currentTime - lastSendTime < 2 * 60 * 1000 || isSame) {
ICLogger.d("onTemperatureGet too frequent...");
return;
}
}
};
+ private boolean checkLastTemperature(Temperature lastTemperature, Temperature temperature) {
+ if (lastTemperature == null) {
+ this.lastTemperature = temperature;
+ return false;
+ }
+ boolean envSame = lastTemperature.getEnvTemp() == temperature.getEnvTemp();
+ boolean bodySame = lastTemperature.getBodyTemp() == temperature.getBodyTemp();
+ boolean wristSame = lastTemperature.getWristTemp() == temperature.getWristTemp();
+ this.lastTemperature = temperature;
+ return envSame && bodySame && wristSame;
+ }
+
private void handleTemperature(Temperature temperature) {
ICLogger.i("Temperature done!" + temperature);
if (temperature == null) {