Merge "profcollectd: OTA Observer" am: 14a7d344a4 am: ebd04e98ee

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1466225

Change-Id: I2b7cda7d3d7fe133bb4af6585fb4afca3b0fbaa3
This commit is contained in:
Yi Kong
2020-10-20 19:44:09 +00:00
committed by Automerger Merge Worker

View File

@@ -29,6 +29,8 @@ import android.os.Looper;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.SystemProperties;
import android.os.UpdateEngine;
import android.os.UpdateEngineCallback;
import android.util.Log;
import com.android.server.IoThread;
@@ -198,6 +200,7 @@ public final class ProfcollectForwardingService extends SystemService {
// Event observers
private void registerObservers() {
registerAppLaunchObserver();
registerOTAObserver();
}
private final AppLaunchObserver mAppLaunchObserver = new AppLaunchObserver();
@@ -261,4 +264,33 @@ public final class ProfcollectForwardingService extends SystemService {
// Ignored
}
}
private void registerOTAObserver() {
UpdateEngine updateEngine = new UpdateEngine();
updateEngine.bind(new UpdateEngineCallback() {
@Override
public void onStatusUpdate(int status, float percent) {
if (status == UpdateEngine.UpdateStatusConstants.UPDATED_NEED_REBOOT) {
packProfileReport();
}
}
@Override
public void onPayloadApplicationComplete(int errorCode) {
// Ignored
}
});
}
private void packProfileReport() {
if (mIProfcollect == null) {
return;
}
try {
mIProfcollect.CreateProfileReport();
} catch (RemoteException e) {
Log.e(LOG_TAG, e.getMessage());
}
}
}