From d2cc14a98bc44ce5f9fb17bd1d1b6bd909f13d19 Mon Sep 17 00:00:00 2001 From: olly Date: Wed, 26 Jan 2022 18:26:53 +0000 Subject: [PATCH] Fix some lint warnings PiperOrigin-RevId: 424383900 --- demos/session/src/main/AndroidManifest.xml | 21 ++++++++----------- demos/surface/src/main/AndroidManifest.xml | 12 ++++++----- libraries/cast/build.gradle | 2 +- .../androidx/media3/common/HeartRating.java | 2 +- .../media3/common/PercentageRating.java | 2 +- .../java/androidx/media3/common/Rating.java | 9 ++++---- .../androidx/media3/common/StarRating.java | 2 +- .../androidx/media3/common/ThumbRating.java | 2 +- .../androidx/media3/common/util/Util.java | 2 ++ libraries/datasource_cronet/build.gradle | 2 +- .../dash/offline/DownloadManagerDashTest.java | 3 +-- .../dash/offline/DownloadServiceDashTest.java | 6 +++--- libraries/exoplayer_ima/build.gradle | 2 +- .../session/MediaStyleNotificationHelper.java | 15 +------------ .../media3/ui/PlayerNotificationManager.java | 1 + 15 files changed, 36 insertions(+), 47 deletions(-) diff --git a/demos/session/src/main/AndroidManifest.xml b/demos/session/src/main/AndroidManifest.xml index c3904595ac..f86bcd86bb 100644 --- a/demos/session/src/main/AndroidManifest.xml +++ b/demos/session/src/main/AndroidManifest.xml @@ -21,15 +21,14 @@ + android:name=".MainActivity" + android:exported="true"> @@ -37,18 +36,16 @@ - + android:name=".PlayerActivity" + android:exported="true"/> - + android:name=".PlayableFolderActivity" + android:exported="true"/> + android:name=".PlaybackService" + android:exported="true"> diff --git a/demos/surface/src/main/AndroidManifest.xml b/demos/surface/src/main/AndroidManifest.xml index 60dd402836..2c009ed2cc 100644 --- a/demos/surface/src/main/AndroidManifest.xml +++ b/demos/surface/src/main/AndroidManifest.xml @@ -22,12 +22,14 @@ + android:allowBackup="false" + android:icon="@mipmap/ic_launcher" + android:label="@string/application_name" + android:exported="true"> - + diff --git a/libraries/cast/build.gradle b/libraries/cast/build.gradle index 7695a09745..32dbee1e1e 100644 --- a/libraries/cast/build.gradle +++ b/libraries/cast/build.gradle @@ -14,7 +14,7 @@ apply from: "$gradle.ext.androidxMediaSettingsDir/common_library_config.gradle" dependencies { - api 'com.google.android.gms:play-services-cast-framework:20.1.0' + api 'com.google.android.gms:play-services-cast-framework:21.0.1' implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion implementation project(modulePrefix + 'lib-common') compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion diff --git a/libraries/common/src/main/java/androidx/media3/common/HeartRating.java b/libraries/common/src/main/java/androidx/media3/common/HeartRating.java index 69798cde82..6f8b45e44a 100644 --- a/libraries/common/src/main/java/androidx/media3/common/HeartRating.java +++ b/libraries/common/src/main/java/androidx/media3/common/HeartRating.java @@ -102,7 +102,7 @@ public final class HeartRating extends Rating { private static HeartRating fromBundle(Bundle bundle) { checkArgument( - bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_DEFAULT) + bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_UNSET) == TYPE); boolean isRated = bundle.getBoolean(keyForField(FIELD_RATED), /* defaultValue= */ false); return isRated diff --git a/libraries/common/src/main/java/androidx/media3/common/PercentageRating.java b/libraries/common/src/main/java/androidx/media3/common/PercentageRating.java index c82c5bbc68..e14012f877 100644 --- a/libraries/common/src/main/java/androidx/media3/common/PercentageRating.java +++ b/libraries/common/src/main/java/androidx/media3/common/PercentageRating.java @@ -98,7 +98,7 @@ public final class PercentageRating extends Rating { private static PercentageRating fromBundle(Bundle bundle) { checkArgument( - bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_DEFAULT) + bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_UNSET) == TYPE); float percent = bundle.getFloat(keyForField(FIELD_PERCENT), /* defaultValue= */ RATING_UNSET); return percent == RATING_UNSET ? new PercentageRating() : new PercentageRating(percent); diff --git a/libraries/common/src/main/java/androidx/media3/common/Rating.java b/libraries/common/src/main/java/androidx/media3/common/Rating.java index a17e6e5ca4..1ff404aa35 100644 --- a/libraries/common/src/main/java/androidx/media3/common/Rating.java +++ b/libraries/common/src/main/java/androidx/media3/common/Rating.java @@ -42,7 +42,7 @@ public abstract class Rating implements Bundleable { @Documented @Retention(RetentionPolicy.SOURCE) @IntDef({ - RATING_TYPE_DEFAULT, + RATING_TYPE_UNSET, RATING_TYPE_HEART, RATING_TYPE_PERCENTAGE, RATING_TYPE_STAR, @@ -50,7 +50,7 @@ public abstract class Rating implements Bundleable { }) /* package */ @interface RatingType {} - /* package */ static final int RATING_TYPE_DEFAULT = -1; + /* package */ static final int RATING_TYPE_UNSET = -1; /* package */ static final int RATING_TYPE_HEART = 0; /* package */ static final int RATING_TYPE_PERCENTAGE = 1; /* package */ static final int RATING_TYPE_STAR = 2; @@ -69,7 +69,7 @@ public abstract class Rating implements Bundleable { private static Rating fromBundle(Bundle bundle) { @RatingType int ratingType = - bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_DEFAULT); + bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_UNSET); switch (ratingType) { case RATING_TYPE_HEART: return HeartRating.CREATOR.fromBundle(bundle); @@ -79,8 +79,9 @@ public abstract class Rating implements Bundleable { return StarRating.CREATOR.fromBundle(bundle); case RATING_TYPE_THUMB: return ThumbRating.CREATOR.fromBundle(bundle); + case RATING_TYPE_UNSET: default: - throw new IllegalArgumentException("Encountered unknown rating type: " + ratingType); + throw new IllegalArgumentException("Unknown RatingType: " + ratingType); } } diff --git a/libraries/common/src/main/java/androidx/media3/common/StarRating.java b/libraries/common/src/main/java/androidx/media3/common/StarRating.java index 147b736293..8ee113fc1f 100644 --- a/libraries/common/src/main/java/androidx/media3/common/StarRating.java +++ b/libraries/common/src/main/java/androidx/media3/common/StarRating.java @@ -127,7 +127,7 @@ public final class StarRating extends Rating { private static StarRating fromBundle(Bundle bundle) { checkArgument( - bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_DEFAULT) + bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_UNSET) == TYPE); int maxStars = bundle.getInt(keyForField(FIELD_MAX_STARS), /* defaultValue= */ MAX_STARS_DEFAULT); diff --git a/libraries/common/src/main/java/androidx/media3/common/ThumbRating.java b/libraries/common/src/main/java/androidx/media3/common/ThumbRating.java index 165ea90608..b73d3c4f83 100644 --- a/libraries/common/src/main/java/androidx/media3/common/ThumbRating.java +++ b/libraries/common/src/main/java/androidx/media3/common/ThumbRating.java @@ -99,7 +99,7 @@ public final class ThumbRating extends Rating { private static ThumbRating fromBundle(Bundle bundle) { checkArgument( - bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_DEFAULT) + bundle.getInt(keyForField(FIELD_RATING_TYPE), /* defaultValue= */ RATING_TYPE_UNSET) == TYPE); boolean rated = bundle.getBoolean(keyForField(FIELD_RATED), /* defaultValue= */ false); return rated diff --git a/libraries/common/src/main/java/androidx/media3/common/util/Util.java b/libraries/common/src/main/java/androidx/media3/common/util/Util.java index 84a9a570be..5e1976f65c 100644 --- a/libraries/common/src/main/java/androidx/media3/common/util/Util.java +++ b/libraries/common/src/main/java/androidx/media3/common/util/Util.java @@ -2407,6 +2407,8 @@ public final class Util { return "camera motion"; case C.TRACK_TYPE_NONE: return "none"; + case C.TRACK_TYPE_UNKNOWN: + return "unknown"; default: return trackType >= C.TRACK_TYPE_CUSTOM_BASE ? "custom (" + trackType + ")" : "?"; } diff --git a/libraries/datasource_cronet/build.gradle b/libraries/datasource_cronet/build.gradle index 055a603d62..2f7633d2d9 100644 --- a/libraries/datasource_cronet/build.gradle +++ b/libraries/datasource_cronet/build.gradle @@ -20,7 +20,7 @@ android { } dependencies { - api "com.google.android.gms:play-services-cronet:17.0.1" + api "com.google.android.gms:play-services-cronet:18.0.1" implementation project(modulePrefix + 'lib-common') implementation project(modulePrefix + 'lib-datasource') implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion diff --git a/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadManagerDashTest.java b/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadManagerDashTest.java index 6f6ce83145..b790a3cae3 100644 --- a/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadManagerDashTest.java +++ b/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadManagerDashTest.java @@ -109,8 +109,7 @@ public class DownloadManagerDashTest { testThread.release(); } - // Disabled due to flakiness. - @Ignore + @Ignore("Disabled due to flakiness") @Test public void saveAndLoadActionFile() throws Throwable { // Configure fakeDataSet to block until interrupted when TEST_MPD is read. diff --git a/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadServiceDashTest.java b/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadServiceDashTest.java index cef9a987bb..888f02178c 100644 --- a/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadServiceDashTest.java +++ b/libraries/exoplayer_dash/src/test/java/androidx/media3/exoplayer/dash/offline/DownloadServiceDashTest.java @@ -157,7 +157,7 @@ public class DownloadServiceDashTest { testThread.release(); } - @Ignore // b/78877092 + @Ignore("Internal ref: b/78877092") @Test public void multipleDownloadRequest() throws Throwable { downloadKeys(fakeStreamKey1); @@ -168,7 +168,7 @@ public class DownloadServiceDashTest { assertCachedData(cache, fakeDataSet); } - @Ignore // b/78877092 + @Ignore("Internal ref: b/78877092") @Test public void removeAction() throws Throwable { downloadKeys(fakeStreamKey1, fakeStreamKey2); @@ -182,7 +182,7 @@ public class DownloadServiceDashTest { assertCacheEmpty(cache); } - @Ignore // b/78877092 + @Ignore("Internal ref: b/78877092") @Test public void removeBeforeDownloadComplete() throws Throwable { pauseDownloadCondition = new ConditionVariable(); diff --git a/libraries/exoplayer_ima/build.gradle b/libraries/exoplayer_ima/build.gradle index c0add470fa..70397d8c5c 100644 --- a/libraries/exoplayer_ima/build.gradle +++ b/libraries/exoplayer_ima/build.gradle @@ -25,7 +25,7 @@ android { } dependencies { - api 'com.google.ads.interactivemedia.v3:interactivemedia:3.25.1' + api 'com.google.ads.interactivemedia.v3:interactivemedia:3.26.0' implementation project(modulePrefix + 'lib-exoplayer') implementation 'androidx.annotation:annotation:' + androidxAnnotationVersion compileOnly 'org.checkerframework:checker-qual:' + checkerframeworkVersion diff --git a/libraries/session/src/main/java/androidx/media3/session/MediaStyleNotificationHelper.java b/libraries/session/src/main/java/androidx/media3/session/MediaStyleNotificationHelper.java index 20bbd01a44..13b0ccaf3b 100644 --- a/libraries/session/src/main/java/androidx/media3/session/MediaStyleNotificationHelper.java +++ b/libraries/session/src/main/java/androidx/media3/session/MediaStyleNotificationHelper.java @@ -251,9 +251,7 @@ public class MediaStyleNotificationHelper { if (!tombstone) { button.setOnClickPendingIntent(androidx.media.R.id.action0, action.getActionIntent()); } - if (Build.VERSION.SDK_INT >= 15) { - Api15Impl.setContentDescription(button, androidx.media.R.id.action0, action.getTitle()); - } + button.setContentDescription(androidx.media.R.id.action0, action.getTitle()); return button; } @@ -474,17 +472,6 @@ public class MediaStyleNotificationHelper { } } - @RequiresApi(15) - private static class Api15Impl { - private Api15Impl() {} - - @DoNotInline - public static void setContentDescription( - RemoteViews remoteViews, int viewId, @Nullable CharSequence contentDescription) { - remoteViews.setContentDescription(viewId, contentDescription); - } - } - @RequiresApi(21) private static class Api21Impl { private Api21Impl() {} diff --git a/libraries/ui/src/main/java/androidx/media3/ui/PlayerNotificationManager.java b/libraries/ui/src/main/java/androidx/media3/ui/PlayerNotificationManager.java index 8909d3d400..142b84cb88 100644 --- a/libraries/ui/src/main/java/androidx/media3/ui/PlayerNotificationManager.java +++ b/libraries/ui/src/main/java/androidx/media3/ui/PlayerNotificationManager.java @@ -1480,6 +1480,7 @@ public class PlayerNotificationManager { return actions; } + @SuppressWarnings("UnspecifiedImmutableFlag") // Warning is spurious. private static PendingIntent createBroadcastIntent( String action, Context context, int instanceId) { Intent intent = new Intent(action).setPackage(context.getPackageName());