From 52d326c2f7ac3632e38a903a7a43857c638bd9af Mon Sep 17 00:00:00 2001 From: Ray Essick Date: Fri, 28 Jan 2022 17:10:18 -0800 Subject: [PATCH] cleanup for strict_updatability_linting add extra annotations, reset lint-baseline.xml files. The lint-baseline.xml includes code fixes from 2021/11 that had no xml regeneration. XML files updated with output from the test make commands. Bug: 188851874 Test: build Test: m out/soong/.intermediates/frameworks/base/apex/media/framework/updatable-media/android_common_apex29/lint/lint-baseline.xml Test: m out/soong/.intermediates/frameworks/base/apex/media/service/service-media-s/android_common_apex29/lint/lint-baseline.xml Change-Id: Iad4d811d4d04dd9901d7290d1342e3aae2c22499 --- apex/media/framework/lint-baseline.xml | 324 +++--------------- apex/media/service/Android.bp | 1 + .../media/MediaCommunicationService.java | 3 + .../server/media/SessionPriorityList.java | 6 + apex/media/service/lint-baseline.xml | 35 +- 5 files changed, 52 insertions(+), 317 deletions(-) diff --git a/apex/media/framework/lint-baseline.xml b/apex/media/framework/lint-baseline.xml index e1b145083f808..95eea45069ef1 100644 --- a/apex/media/framework/lint-baseline.xml +++ b/apex/media/framework/lint-baseline.xml @@ -1,312 +1,70 @@ - + + id="DefaultLocale" + message="Implicitly using the default locale is a common source of bugs: Use `toLowerCase(Locale)` instead. For strings meant to be internal use `Locale.ROOT`, otherwise `Locale.getDefault()`." + errorLine1=" if (mSupportedVideoMimeTypes.contains(videoMime.toLowerCase())) {" + errorLine2=" ~~~~~~~~~~~"> + line="121" + column="57"/> + id="DefaultLocale" + message="Implicitly using the default locale is a common source of bugs: Use `String.format(Locale, ...)` instead" + errorLine1=" return String.format(" session: {id: %d, status: %s, result: %s, progress: %d}"," + errorLine2=" ^"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + id="ParcelClassLoader" + message="Passing null here (to use the default class loader) will not work if you are restoring your own classes. Consider using for example `getClass().getClassLoader()` instead." + errorLine1=" Bundle out = parcel.readBundle(null);" + errorLine2=" ~~~~~~~~~~~~~~~~"> + file="frameworks/base/apex/media/framework/java/android/media/MediaSession2.java" + line="303" + column="33"/> + id="ParcelClassLoader" + message="Using the default class loader will not work if you are restoring your own classes. Consider using for example `readBundle(getClass().getClassLoader())` instead." + errorLine1=" mCustomExtras = in.readBundle();" + errorLine2=" ~~~~~~~~~~~~"> + file="frameworks/base/apex/media/framework/java/android/media/Session2Command.java" + line="104" + column="28"/> + id="ParcelClassLoader" + message="Passing null here (to use the default class loader) will not work if you are restoring your own classes. Consider using for example `getClass().getClassLoader()` instead." + errorLine1=" mSessionLink = in.readParcelable(null);" + errorLine2=" ~~~~~~~~~~~~~~~~~~~~"> + file="frameworks/base/apex/media/framework/java/android/media/Session2Token.java" + line="141" + column="27"/> + id="ParcelClassLoader" + message="Using the default class loader will not work if you are restoring your own classes. Consider using for example `readBundle(getClass().getClassLoader())` instead." + errorLine1=" Bundle extras = in.readBundle();" + errorLine2=" ~~~~~~~~~~~~"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + file="frameworks/base/apex/media/framework/java/android/media/Session2Token.java" + line="144" + column="28"/> diff --git a/apex/media/service/Android.bp b/apex/media/service/Android.bp index cf384acccb126..2714809e0c3d5 100644 --- a/apex/media/service/Android.bp +++ b/apex/media/service/Android.bp @@ -39,6 +39,7 @@ java_sdk_library { ":service-media-s-sources", ], libs: [ + "androidx.annotation_annotation", "updatable-media", "modules-annotation-minsdk", "modules-utils-build", diff --git a/apex/media/service/java/com/android/server/media/MediaCommunicationService.java b/apex/media/service/java/com/android/server/media/MediaCommunicationService.java index 7d47e250f99d6..4223fa65fd53d 100644 --- a/apex/media/service/java/com/android/server/media/MediaCommunicationService.java +++ b/apex/media/service/java/com/android/server/media/MediaCommunicationService.java @@ -46,6 +46,8 @@ import android.util.SparseArray; import android.util.SparseIntArray; import android.view.KeyEvent; +import androidx.annotation.RequiresApi; + import com.android.internal.annotations.GuardedBy; import com.android.modules.annotation.MinSdk; import com.android.server.SystemService; @@ -63,6 +65,7 @@ import java.util.concurrent.Executors; * @hide */ @MinSdk(Build.VERSION_CODES.S) +@RequiresApi(Build.VERSION_CODES.S) public class MediaCommunicationService extends SystemService { private static final String TAG = "MediaCommunicationSrv"; private static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG); diff --git a/apex/media/service/java/com/android/server/media/SessionPriorityList.java b/apex/media/service/java/com/android/server/media/SessionPriorityList.java index 47b14b63ddbaa..814586139123f 100644 --- a/apex/media/service/java/com/android/server/media/SessionPriorityList.java +++ b/apex/media/service/java/com/android/server/media/SessionPriorityList.java @@ -18,9 +18,13 @@ package com.android.server.media; import android.annotation.Nullable; import android.media.Session2Token; +import android.os.Build; import android.util.Log; +import androidx.annotation.RequiresApi; + import com.android.internal.annotations.GuardedBy; +import com.android.modules.annotation.MinSdk; import com.android.server.media.MediaCommunicationService.Session2Record; import java.util.ArrayList; @@ -33,6 +37,8 @@ import java.util.List; * Higher priority session has more chance to be selected as media button session, * which receives the media button events. */ +@MinSdk(Build.VERSION_CODES.S) +@RequiresApi(Build.VERSION_CODES.S) class SessionPriorityList { private static final String TAG = "SessionPriorityList"; private final Object mLock = new Object(); diff --git a/apex/media/service/lint-baseline.xml b/apex/media/service/lint-baseline.xml index 05ce17c26872c..def6baf0ff4f0 100644 --- a/apex/media/service/lint-baseline.xml +++ b/apex/media/service/lint-baseline.xml @@ -1,37 +1,4 @@ - - - - - - - - - - - - - +