mirror of
https://github.com/samsonjs/media.git
synced 2026-04-27 15:07:40 +00:00
Workaround for pre-M platform bug when instantiating CaptioningManager.
PiperOrigin-RevId: 279286802
This commit is contained in:
parent
a9ef9c46c8
commit
71f7ab1c57
1 changed files with 6 additions and 0 deletions
|
|
@ -17,6 +17,7 @@ package com.google.android.exoplayer2.trackselection;
|
||||||
|
|
||||||
import android.annotation.TargetApi;
|
import android.annotation.TargetApi;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.os.Looper;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
|
@ -171,6 +172,11 @@ public class TrackSelectionParameters implements Parcelable {
|
||||||
@TargetApi(19)
|
@TargetApi(19)
|
||||||
private void setPreferredTextLanguageAndRoleFlagsToCaptioningManagerSettingsV19(
|
private void setPreferredTextLanguageAndRoleFlagsToCaptioningManagerSettingsV19(
|
||||||
Context context) {
|
Context context) {
|
||||||
|
if (Util.SDK_INT < 23 && Looper.myLooper() == null) {
|
||||||
|
// Android platform bug (pre-Marshmallow) that causes RuntimeExceptions when
|
||||||
|
// CaptioningService is instantiated from a non-Looper thread. See [internal: b/143779904].
|
||||||
|
return;
|
||||||
|
}
|
||||||
CaptioningManager captioningManager =
|
CaptioningManager captioningManager =
|
||||||
(CaptioningManager) context.getSystemService(Context.CAPTIONING_SERVICE);
|
(CaptioningManager) context.getSystemService(Context.CAPTIONING_SERVICE);
|
||||||
if (captioningManager == null || !captioningManager.isEnabled()) {
|
if (captioningManager == null || !captioningManager.isEnabled()) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue