Merge "Update system api for applyPayload"

am: c8f699d327

Change-Id: I7f8c371488fb152cf6fb7aba939ab5be053b6a8c
This commit is contained in:
Tianjie Xu
2020-01-10 01:05:00 -08:00
committed by android-build-merger
2 changed files with 7 additions and 5 deletions

View File

@@ -6224,7 +6224,7 @@ package android.os {
ctor public UpdateEngine(); ctor public UpdateEngine();
method @NonNull public android.os.UpdateEngine.AllocateSpaceResult allocateSpace(@NonNull String, @NonNull String[]); method @NonNull public android.os.UpdateEngine.AllocateSpaceResult allocateSpace(@NonNull String, @NonNull String[]);
method public void applyPayload(String, long, long, String[]); method public void applyPayload(String, long, long, String[]);
method public void applyPayload(@NonNull android.os.ParcelFileDescriptor, long, long, @NonNull String[]); method public void applyPayload(@NonNull android.content.res.AssetFileDescriptor, @NonNull String[]);
method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler); method public boolean bind(android.os.UpdateEngineCallback, android.os.Handler);
method public boolean bind(android.os.UpdateEngineCallback); method public boolean bind(android.os.UpdateEngineCallback);
method public void cancel(); method public void cancel();

View File

@@ -19,6 +19,7 @@ package android.os;
import android.annotation.IntDef; import android.annotation.IntDef;
import android.annotation.NonNull; import android.annotation.NonNull;
import android.annotation.SystemApi; import android.annotation.SystemApi;
import android.content.res.AssetFileDescriptor;
import android.os.IUpdateEngine; import android.os.IUpdateEngine;
import android.os.IUpdateEngineCallback; import android.os.IUpdateEngineCallback;
import android.os.RemoteException; import android.os.RemoteException;
@@ -349,16 +350,17 @@ public class UpdateEngine {
} }
/** /**
* Applies the payload passed as ParcelFileDescriptor {@code pfd} instead of * Applies the payload passed as AssetFileDescriptor {@code assetFd}
* using the {@code file://} scheme. * instead of using the {@code file://} scheme.
* *
* <p>See {@link #applyPayload(String)} for {@code offset}, {@code size} and * <p>See {@link #applyPayload(String)} for {@code offset}, {@code size} and
* {@code headerKeyValuePairs} parameters. * {@code headerKeyValuePairs} parameters.
*/ */
public void applyPayload(@NonNull ParcelFileDescriptor pfd, long offset, long size, public void applyPayload(@NonNull AssetFileDescriptor assetFd,
@NonNull String[] headerKeyValuePairs) { @NonNull String[] headerKeyValuePairs) {
try { try {
mUpdateEngine.applyPayloadFd(pfd, offset, size, headerKeyValuePairs); mUpdateEngine.applyPayloadFd(assetFd.getParcelFileDescriptor(),
assetFd.getStartOffset(), assetFd.getLength(), headerKeyValuePairs);
} catch (RemoteException e) { } catch (RemoteException e) {
throw e.rethrowFromSystemServer(); throw e.rethrowFromSystemServer();
} }