More demo app unstable API opt-in and reshuffling

Follow-up to a5330d43d4

PiperOrigin-RevId: 437777871
This commit is contained in:
ibaker 2022-03-28 17:26:47 +01:00 committed by Ian Baker
parent e4556d76a9
commit 0096b40b75

View File

@ -28,6 +28,7 @@ import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import androidx.annotation.OptIn;
import androidx.appcompat.app.AppCompatActivity; import androidx.appcompat.app.AppCompatActivity;
import androidx.media3.common.AudioAttributes; import androidx.media3.common.AudioAttributes;
import androidx.media3.common.C; import androidx.media3.common.C;
@ -509,10 +510,16 @@ public class PlayerActivity extends AppCompatActivity
private static List<MediaItem> createMediaItems(Intent intent, DownloadTracker downloadTracker) { private static List<MediaItem> createMediaItems(Intent intent, DownloadTracker downloadTracker) {
List<MediaItem> mediaItems = new ArrayList<>(); List<MediaItem> mediaItems = new ArrayList<>();
for (MediaItem item : IntentUtil.createMediaItemsFromIntent(intent)) { for (MediaItem item : IntentUtil.createMediaItemsFromIntent(intent)) {
@Nullable mediaItems.add(
DownloadRequest downloadRequest = maybeSetDownloadProperties(
downloadTracker.getDownloadRequest(item.localConfiguration.uri); item, downloadTracker.getDownloadRequest(item.localConfiguration.uri)));
if (downloadRequest != null) { }
return mediaItems;
}
@OptIn(markerClass = androidx.media3.common.util.UnstableApi.class)
private static MediaItem maybeSetDownloadProperties(
MediaItem item, @Nullable DownloadRequest downloadRequest) {
MediaItem.Builder builder = item.buildUpon(); MediaItem.Builder builder = item.buildUpon();
builder builder
.setMediaId(downloadRequest.id) .setMediaId(downloadRequest.id)
@ -526,12 +533,6 @@ public class PlayerActivity extends AppCompatActivity
builder.setDrmConfiguration( builder.setDrmConfiguration(
drmConfiguration.buildUpon().setKeySetId(downloadRequest.keySetId).build()); drmConfiguration.buildUpon().setKeySetId(downloadRequest.keySetId).build());
} }
return builder.build();
mediaItems.add(builder.build());
} else {
mediaItems.add(item);
}
}
return mediaItems;
} }
} }