Merge "profcollectd: OTA Observer" am: 14a7d344a4
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1466225 Change-Id: If4daf34734dea92f027c80314a4f222d2e24b8ee
This commit is contained in:
@@ -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());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user