From bc42978259c281481baf144940a034d3451053f8 Mon Sep 17 00:00:00 2001 From: Charles Chen Date: Fri, 29 Jan 2021 22:10:29 +0800 Subject: [PATCH] Unhide IncorrectContextUseViolation As a feedback from API review, we should unhide the violation so that the developers can perform instanceof check when writing their own logging stacks. fixes: 177707145 Test: atest StrictModeTest Change-Id: I6fbf10c915b5b6a7c72aacc5882ef5e33551c6e8 --- core/api/current.txt | 4 ++++ .../os/strictmode/IncorrectContextUseViolation.java | 13 +++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/core/api/current.txt b/core/api/current.txt index f49ce1fd48a5b..975f699df7229 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -31849,6 +31849,10 @@ package android.os.strictmode { public final class ImplicitDirectBootViolation extends android.os.strictmode.Violation { } + public final class IncorrectContextUseViolation extends android.os.strictmode.Violation { + ctor public IncorrectContextUseViolation(@NonNull String, @NonNull Throwable); + } + public class InstanceCountViolation extends android.os.strictmode.Violation { method public long getNumberOfInstances(); } diff --git a/core/java/android/os/strictmode/IncorrectContextUseViolation.java b/core/java/android/os/strictmode/IncorrectContextUseViolation.java index 647db171e080a..11d26cab14b3c 100644 --- a/core/java/android/os/strictmode/IncorrectContextUseViolation.java +++ b/core/java/android/os/strictmode/IncorrectContextUseViolation.java @@ -16,19 +16,20 @@ package android.os.strictmode; +import android.annotation.NonNull; import android.content.Context; /** - * Incorrect usage of {@link Context}, such as obtaining a visual service from non-visual - * {@link Context} instance. + * Incorrect usage of {@link Context}, such as obtaining a UI service from non-UI {@link Context} + * instance. + * * @see Context#getSystemService(String) - * @see Context#getDisplayNoVerify() - * @hide + * @see Context#isUiContext(Context) + * @see android.os.StrictMode.VmPolicy.Builder#detectIncorrectContextUse() */ public final class IncorrectContextUseViolation extends Violation { - /** @hide */ - public IncorrectContextUseViolation(String message, Throwable originStack) { + public IncorrectContextUseViolation(@NonNull String message, @NonNull Throwable originStack) { super(message); initCause(originStack); }