Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(616)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrCoreVersionCheckerImpl.java

Issue 2701523008: Intercept WebVR api calls and check for VrCore compatibility. (Closed)
Patch Set: rebase on latest patch Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrCoreVersionCheckerImpl.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrCoreVersionCheckerImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrCoreVersionCheckerImpl.java
index a0a777932555f6ed03328dc1efc47c6e189236f9..dfb25f3132acb12610dd6da5e27f9f8e2966ad1d 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrCoreVersionCheckerImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/vr_shell/VrCoreVersionCheckerImpl.java
@@ -4,6 +4,8 @@
package org.chromium.chrome.browser.vr_shell;
+import android.os.Build;
+
import com.google.vr.ndk.base.Version;
import com.google.vr.vrcore.base.api.VrCoreNotAvailableException;
import com.google.vr.vrcore.base.api.VrCoreUtils;
@@ -11,14 +13,26 @@ import com.google.vr.vrcore.base.api.VrCoreUtils;
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
+import org.chromium.chrome.browser.ChromeFeatureList;
+
/**
* Helper class to check if VrCore version is compatible with Chromium.
*/
public class VrCoreVersionCheckerImpl implements VrCoreVersionChecker {
private static final String TAG = "VrCoreVersionChecker";
+ private static final String MIN_SDK_VERSION_PARAM_NAME = "min_sdk_version";
+
@Override
public int getVrCoreCompatibility() {
+ // Supported Build version is determined by the webvr cardboard support feature.
+ // Default is KITKAT unless specified via server side finch config.
+ if (Build.VERSION.SDK_INT < ChromeFeatureList.getFieldTrialParamByFeatureAsInt(
+ ChromeFeatureList.WEBVR_CARDBOARD_SUPPORT,
+ MIN_SDK_VERSION_PARAM_NAME,
+ Build.VERSION_CODES.KITKAT)) {
+ return VrCoreVersionChecker.VR_NOT_SUPPORTED;
+ }
try {
String vrCoreSdkLibraryVersionString = VrCoreUtils.getVrCoreSdkLibraryVersion(
ContextUtils.getApplicationContext());

Powered by Google App Engine
This is Rietveld 408576698