Additional secure DummySurface device exclusions

Merge: https://github.com/google/ExoPlayer/pull/3225

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=167502127
This commit is contained in:
olly 2017-09-04 08:55:20 -07:00 committed by Oliver Woodman
parent c9f31a41cd
commit 472df08f08

View File

@ -43,6 +43,7 @@ import static android.opengl.GLES20.glGenTextures;
import android.annotation.TargetApi;
import android.content.Context;
import android.content.pm.PackageManager;
import android.graphics.SurfaceTexture;
import android.graphics.SurfaceTexture.OnFrameAvailableListener;
import android.opengl.EGL14;
@ -152,9 +153,15 @@ public final class DummySurface extends Surface {
*
* @param context Any {@link Context}.
*/
@SuppressWarnings("unused") // Context may be needed in the future for better targeting.
private static boolean deviceNeedsSecureDummySurfaceWorkaround(Context context) {
return Util.SDK_INT == 24 && "samsung".equals(Util.MANUFACTURER);
return (Util.SDK_INT == 24 && "samsung".equals(Util.MANUFACTURER))
|| (Util.SDK_INT < 26
&& !hasVrModeHighPerformanceSystemFeatureV24(context.getPackageManager()));
}
@TargetApi(24)
private static boolean hasVrModeHighPerformanceSystemFeatureV24(PackageManager packageManager) {
return packageManager.hasSystemFeature(PackageManager.FEATURE_VR_MODE_HIGH_PERFORMANCE);
}
private static class DummySurfaceThread extends HandlerThread implements OnFrameAvailableListener,