OSDN Git Service

Restrict reflection access to mLayoutParams
authorJakub Gielzak <jgielzak@google.com>
Tue, 5 Feb 2019 12:33:43 +0000 (12:33 +0000)
committerJakub Gielzak <jgielzak@google.com>
Tue, 5 Feb 2019 12:51:52 +0000 (12:51 +0000)
Users should rely on the getter / setter. The setter additionally
guarantees internal state correctness.

Bug: 123768937
Test: n/a

Change-Id: Ia2dcbe9db3fdeab8aeac9b80dcfaaa0932724dc2

core/java/android/view/View.java

index 992b996..ab18fbd 100644 (file)
@@ -4140,9 +4140,13 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
      * The layout parameters associated with this view and used by the parent
      * {@link android.view.ViewGroup} to determine how this view should be
      * laid out.
+     *
+     * The field should not be used directly. Instead {@link #getLayoutParams()} and {@link
+     * #setLayoutParams(ViewGroup.LayoutParams)} should be used. The setter guarantees internal
+     * state correctness of the class.
      * {@hide}
      */
-    @UnsupportedAppUsage
+    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P)
     protected ViewGroup.LayoutParams mLayoutParams;
 
     /**