Merge "Fix StrictModeTest#testNonSdkApiUsage" into qt-dev

am: 4f179bb174

Change-Id: Ic8177c57829e8f28b881c3347b1a4b93084c7fe4
This commit is contained in:
PO HUNG CHEN
2019-05-28 19:16:26 -07:00
committed by android-build-merger
5 changed files with 67 additions and 0 deletions

View File

@@ -1918,6 +1918,10 @@ package android.os {
method public boolean hasSingleFileDescriptor();
}
public final class Parcel {
method public int readExceptionCode();
}
public class ParcelFileDescriptor implements java.io.Closeable android.os.Parcelable {
method public static java.io.File getFile(java.io.FileDescriptor) throws java.io.IOException;
}
@@ -1987,6 +1991,7 @@ package android.os {
public class SystemProperties {
method @NonNull public static String get(@NonNull String);
method @NonNull public static String get(@NonNull String, @Nullable String);
method public static boolean getBoolean(@NonNull String, boolean);
}
public final class UserHandle implements android.os.Parcelable {
@@ -2141,6 +2146,36 @@ package android.os.health {
}
package android.os.image {
public class DynamicSystemClient {
ctor public DynamicSystemClient(@NonNull android.content.Context);
method @RequiresPermission("android.permission.INSTALL_DYNAMIC_SYSTEM") public void bind();
method public void setOnStatusChangedListener(@NonNull java.util.concurrent.Executor, @NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
method public void setOnStatusChangedListener(@NonNull android.os.image.DynamicSystemClient.OnStatusChangedListener);
method @RequiresPermission("android.permission.INSTALL_DYNAMIC_SYSTEM") public void start(@NonNull android.net.Uri, long);
method @RequiresPermission("android.permission.INSTALL_DYNAMIC_SYSTEM") public void start(@NonNull android.net.Uri, long, long);
method @RequiresPermission("android.permission.INSTALL_DYNAMIC_SYSTEM") public void unbind();
field public static final int CAUSE_ERROR_EXCEPTION = 6; // 0x6
field public static final int CAUSE_ERROR_INVALID_URL = 4; // 0x4
field public static final int CAUSE_ERROR_IO = 3; // 0x3
field public static final int CAUSE_ERROR_IPC = 5; // 0x5
field public static final int CAUSE_INSTALL_CANCELLED = 2; // 0x2
field public static final int CAUSE_INSTALL_COMPLETED = 1; // 0x1
field public static final int CAUSE_NOT_SPECIFIED = 0; // 0x0
field public static final int STATUS_IN_PROGRESS = 2; // 0x2
field public static final int STATUS_IN_USE = 4; // 0x4
field public static final int STATUS_NOT_STARTED = 1; // 0x1
field public static final int STATUS_READY = 3; // 0x3
field public static final int STATUS_UNKNOWN = 0; // 0x0
}
public static interface DynamicSystemClient.OnStatusChangedListener {
method public void onStatusChanged(int, int, long, @Nullable Throwable);
}
}
package android.os.storage {
public class StorageManager {
@@ -2947,6 +2982,21 @@ package android.util {
method public E valueAtUnchecked(int);
}
public class FeatureFlagUtils {
ctor public FeatureFlagUtils();
method public static java.util.Map<java.lang.String,java.lang.String> getAllFeatureFlags();
method public static boolean isEnabled(android.content.Context, String);
method public static void setEnabled(android.content.Context, String, boolean);
field public static final String DYNAMIC_SYSTEM = "settings_dynamic_system";
field public static final String FFLAG_OVERRIDE_PREFIX = "sys.fflag.override.";
field public static final String FFLAG_PREFIX = "sys.fflag.";
field public static final String HEARING_AID_SETTINGS = "settings_bluetooth_hearing_aid";
field public static final String PERSIST_PREFIX = "persist.sys.fflag.override.";
field public static final String PIXEL_WALLPAPER_CATEGORY_SWITCH = "settings_pixel_wallpaper_category_switch";
field public static final String SCREENRECORD_LONG_PRESS = "settings_screenrecord_long_press";
field public static final String SEAMLESS_TRANSFER = "settings_seamless_transfer";
}
public class TimeUtils {
method public static String formatDuration(long);
}

View File

@@ -18,6 +18,7 @@ package android.os;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.TestApi;
import android.annotation.UnsupportedAppUsage;
import android.text.TextUtils;
import android.util.ArrayMap;
@@ -2001,6 +2002,7 @@ public final class Parcel {
* @hide
*/
@UnsupportedAppUsage
@TestApi
public final int readExceptionCode() {
int code = readInt();
if (code == EX_HAS_REPLY_HEADER) {

View File

@@ -174,6 +174,7 @@ public class SystemProperties {
* @hide
*/
@SystemApi
@TestApi
public static boolean getBoolean(@NonNull String key, boolean def) {
if (TRACK_KEY_ACCESS) onKeyAccess(key);
return native_get_boolean(key, def);

View File

@@ -22,6 +22,7 @@ import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.RequiresPermission;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
@@ -67,6 +68,7 @@ import java.util.concurrent.Executor;
* @hide
*/
@SystemApi
@TestApi
public class DynamicSystemClient {
/** @hide */
@IntDef(prefix = { "STATUS_" }, value = {
@@ -283,6 +285,7 @@ public class DynamicSystemClient {
* @hide
*/
@SystemApi
@TestApi
public DynamicSystemClient(@NonNull Context context) {
mContext = context;
mConnection = new DynSystemServiceConnection();
@@ -314,8 +317,11 @@ public class DynamicSystemClient {
* Bind to {@code DynamicSystem} installation service. Binding to the installation service
* allows it to send status updates to {@link #OnStatusChangedListener}. It is recommanded
* to bind before calling {@link #start} and get status updates.
* @hide
*/
@RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM)
@SystemApi
@TestApi
public void bind() {
if (!featureFlagEnabled()) {
Slog.w(TAG, FeatureFlagUtils.DYNAMIC_SYSTEM + " not enabled; bind() aborted.");
@@ -334,8 +340,11 @@ public class DynamicSystemClient {
/**
* Unbind from {@code DynamicSystem} installation service. Unbinding from the installation
* service stops it from sending following status updates.
* @hide
*/
@RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM)
@SystemApi
@TestApi
public void unbind() {
if (!mBound) {
return;
@@ -367,8 +376,11 @@ public class DynamicSystemClient {
*
* @param systemUrl a network Uri, a file Uri or a content Uri pointing to a system image file.
* @param systemSize size of system image.
* @hide
*/
@RequiresPermission(android.Manifest.permission.INSTALL_DYNAMIC_SYSTEM)
@SystemApi
@TestApi
public void start(@NonNull Uri systemUrl, @BytesLong long systemSize) {
start(systemUrl, systemSize, DEFAULT_USERDATA_SIZE);
}

View File

@@ -16,6 +16,7 @@
package android.util;
import android.annotation.TestApi;
import android.content.Context;
import android.os.SystemProperties;
import android.provider.Settings;
@@ -29,6 +30,7 @@ import java.util.Map;
*
* @hide
*/
@TestApi
public class FeatureFlagUtils {
public static final String FFLAG_PREFIX = "sys.fflag.";