mirror of
https://github.com/samsonjs/media.git
synced 2026-04-27 15:07:40 +00:00
Pass UriSample to DownloadTracker
PiperOrigin-RevId: 306469450
This commit is contained in:
parent
66f1c04445
commit
a99288a6fa
2 changed files with 11 additions and 17 deletions
|
|
@ -24,6 +24,7 @@ import androidx.annotation.Nullable;
|
||||||
import androidx.fragment.app.FragmentManager;
|
import androidx.fragment.app.FragmentManager;
|
||||||
import com.google.android.exoplayer2.C;
|
import com.google.android.exoplayer2.C;
|
||||||
import com.google.android.exoplayer2.RenderersFactory;
|
import com.google.android.exoplayer2.RenderersFactory;
|
||||||
|
import com.google.android.exoplayer2.demo.Sample.UriSample;
|
||||||
import com.google.android.exoplayer2.offline.Download;
|
import com.google.android.exoplayer2.offline.Download;
|
||||||
import com.google.android.exoplayer2.offline.DownloadCursor;
|
import com.google.android.exoplayer2.offline.DownloadCursor;
|
||||||
import com.google.android.exoplayer2.offline.DownloadHelper;
|
import com.google.android.exoplayer2.offline.DownloadHelper;
|
||||||
|
|
@ -92,12 +93,8 @@ public class DownloadTracker {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void toggleDownload(
|
public void toggleDownload(
|
||||||
FragmentManager fragmentManager,
|
FragmentManager fragmentManager, UriSample sample, RenderersFactory renderersFactory) {
|
||||||
String name,
|
Download download = downloads.get(sample.uri);
|
||||||
Uri uri,
|
|
||||||
String extension,
|
|
||||||
RenderersFactory renderersFactory) {
|
|
||||||
Download download = downloads.get(uri);
|
|
||||||
if (download != null) {
|
if (download != null) {
|
||||||
DownloadService.sendRemoveDownload(
|
DownloadService.sendRemoveDownload(
|
||||||
context, DemoDownloadService.class, download.request.id, /* foreground= */ false);
|
context, DemoDownloadService.class, download.request.id, /* foreground= */ false);
|
||||||
|
|
@ -107,7 +104,9 @@ public class DownloadTracker {
|
||||||
}
|
}
|
||||||
startDownloadDialogHelper =
|
startDownloadDialogHelper =
|
||||||
new StartDownloadDialogHelper(
|
new StartDownloadDialogHelper(
|
||||||
fragmentManager, getDownloadHelper(uri, extension, renderersFactory), name);
|
fragmentManager,
|
||||||
|
getDownloadHelper(sample.uri, sample.extension, renderersFactory),
|
||||||
|
sample);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -167,16 +166,16 @@ public class DownloadTracker {
|
||||||
|
|
||||||
private final FragmentManager fragmentManager;
|
private final FragmentManager fragmentManager;
|
||||||
private final DownloadHelper downloadHelper;
|
private final DownloadHelper downloadHelper;
|
||||||
private final String name;
|
private final UriSample sample;
|
||||||
|
|
||||||
private TrackSelectionDialog trackSelectionDialog;
|
private TrackSelectionDialog trackSelectionDialog;
|
||||||
private MappedTrackInfo mappedTrackInfo;
|
private MappedTrackInfo mappedTrackInfo;
|
||||||
|
|
||||||
public StartDownloadDialogHelper(
|
public StartDownloadDialogHelper(
|
||||||
FragmentManager fragmentManager, DownloadHelper downloadHelper, String name) {
|
FragmentManager fragmentManager, DownloadHelper downloadHelper, UriSample sample) {
|
||||||
this.fragmentManager = fragmentManager;
|
this.fragmentManager = fragmentManager;
|
||||||
this.downloadHelper = downloadHelper;
|
this.downloadHelper = downloadHelper;
|
||||||
this.name = name;
|
this.sample = sample;
|
||||||
downloadHelper.prepare(this);
|
downloadHelper.prepare(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -271,7 +270,7 @@ public class DownloadTracker {
|
||||||
}
|
}
|
||||||
|
|
||||||
private DownloadRequest buildDownloadRequest() {
|
private DownloadRequest buildDownloadRequest() {
|
||||||
return downloadHelper.getDownloadRequest(Util.getUtf8Bytes(name));
|
return downloadHelper.getDownloadRequest(Util.getUtf8Bytes(sample.name));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -249,16 +249,11 @@ public class SampleChooserActivity extends AppCompatActivity
|
||||||
Toast.makeText(getApplicationContext(), downloadUnsupportedStringId, Toast.LENGTH_LONG)
|
Toast.makeText(getApplicationContext(), downloadUnsupportedStringId, Toast.LENGTH_LONG)
|
||||||
.show();
|
.show();
|
||||||
} else {
|
} else {
|
||||||
UriSample uriSample = (UriSample) sample;
|
|
||||||
RenderersFactory renderersFactory =
|
RenderersFactory renderersFactory =
|
||||||
((DemoApplication) getApplication())
|
((DemoApplication) getApplication())
|
||||||
.buildRenderersFactory(isNonNullAndChecked(preferExtensionDecodersMenuItem));
|
.buildRenderersFactory(isNonNullAndChecked(preferExtensionDecodersMenuItem));
|
||||||
downloadTracker.toggleDownload(
|
downloadTracker.toggleDownload(
|
||||||
getSupportFragmentManager(),
|
getSupportFragmentManager(), (UriSample) sample, renderersFactory);
|
||||||
sample.name,
|
|
||||||
uriSample.uri,
|
|
||||||
uriSample.extension,
|
|
||||||
renderersFactory);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue