Commit c03527a3 authored by Evan Stade's avatar Evan Stade Committed by Commit Bot

Enable WebOTP for WebLayer

- stop explicitly disabling for WebLayer
- add a play services java dependency to WebLayer Shell so the
  play services version metadata is added to the manifest
- add some error logging to SmsUserConsentReceiver to make the
  case where apps lack that tag more apparent

Bug: 1035836
Change-Id: I15a1a946479c1b5126e1458f548fa13d08e526d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2337387
Commit-Queue: Evan Stade <estade@chromium.org>
Reviewed-by: default avatarSam Goto <goto@chromium.org>
Reviewed-by: default avatarClark DuVall <cduvall@chromium.org>
Reviewed-by: default avatarBo <boliu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#795594}
parent 71a128bc
...@@ -15,6 +15,7 @@ import androidx.annotation.VisibleForTesting; ...@@ -15,6 +15,7 @@ import androidx.annotation.VisibleForTesting;
import com.google.android.gms.auth.api.phone.SmsRetriever; import com.google.android.gms.auth.api.phone.SmsRetriever;
import com.google.android.gms.common.api.CommonStatusCodes; import com.google.android.gms.common.api.CommonStatusCodes;
import com.google.android.gms.common.api.Status; import com.google.android.gms.common.api.Status;
import com.google.android.gms.tasks.OnFailureListener;
import com.google.android.gms.tasks.Task; import com.google.android.gms.tasks.Task;
import org.chromium.base.ContextUtils; import org.chromium.base.ContextUtils;
...@@ -32,7 +33,7 @@ import org.chromium.ui.base.WindowAndroid; ...@@ -32,7 +33,7 @@ import org.chromium.ui.base.WindowAndroid;
@JNINamespace("content") @JNINamespace("content")
@JNIAdditionalImport(Wrappers.class) @JNIAdditionalImport(Wrappers.class)
public class SmsUserConsentReceiver extends BroadcastReceiver { public class SmsUserConsentReceiver extends BroadcastReceiver {
private static final String TAG = "SmsUserConsentReceiver"; private static final String TAG = "SmsUserConsentRcvr";
private static final boolean DEBUG = false; private static final boolean DEBUG = false;
private final long mSmsProviderAndroid; private final long mSmsProviderAndroid;
private boolean mDestroyed; private boolean mDestroyed;
...@@ -130,6 +131,13 @@ public class SmsUserConsentReceiver extends BroadcastReceiver { ...@@ -130,6 +131,13 @@ public class SmsUserConsentReceiver extends BroadcastReceiver {
private void listen(WindowAndroid windowAndroid) { private void listen(WindowAndroid windowAndroid) {
mWindowAndroid = windowAndroid; mWindowAndroid = windowAndroid;
Task<Void> task = getClient().startSmsUserConsent(null); Task<Void> task = getClient().startSmsUserConsent(null);
task.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(Exception e) {
Log.e(TAG, "Task failed to start", e);
}
});
if (DEBUG) Log.d(TAG, "Installed task"); if (DEBUG) Log.d(TAG, "Installed task");
} }
......
...@@ -155,7 +155,6 @@ bool ContentMainDelegateImpl::BasicStartupComplete(int* exit_code) { ...@@ -155,7 +155,6 @@ bool ContentMainDelegateImpl::BasicStartupComplete(int* exit_code) {
::features::kWebPayments, ::features::kWebPayments,
// TODO(crbug.com/1025627): make webauth work with WebLayer. // TODO(crbug.com/1025627): make webauth work with WebLayer.
::features::kWebAuth, ::features::kWebAuth,
::features::kSmsReceiver,
// TODO(crbug.com/1057106): make web-xr work with WebLayer. // TODO(crbug.com/1057106): make web-xr work with WebLayer.
::features::kWebXr, ::features::kWebXr,
::features::kWebXrArModule, ::features::kWebXrArModule,
...@@ -168,7 +167,6 @@ bool ContentMainDelegateImpl::BasicStartupComplete(int* exit_code) { ...@@ -168,7 +167,6 @@ bool ContentMainDelegateImpl::BasicStartupComplete(int* exit_code) {
::features::kNotificationTriggers, ::features::kNotificationTriggers,
// TODO(crbug.com/1091211): Support PeriodicBackgroundSync on WebLayer. // TODO(crbug.com/1091211): Support PeriodicBackgroundSync on WebLayer.
::features::kPeriodicBackgroundSync, ::features::kPeriodicBackgroundSync,
::features::kSmsReceiver,
media::kOverlayFullscreenVideo, media::kOverlayFullscreenVideo,
#if defined(OS_ANDROID) #if defined(OS_ANDROID)
media::kPictureInPictureAPI, media::kPictureInPictureAPI,
......
...@@ -34,8 +34,11 @@ android_resources("weblayer_shell_resources") { ...@@ -34,8 +34,11 @@ android_resources("weblayer_shell_resources") {
android_library("weblayer_shell_java") { android_library("weblayer_shell_java") {
testonly = true testonly = true
# The play services dependency is necessary for the
# google_play_services_version definition in the manifest.
deps = [ deps = [
":weblayer_shell_resources", ":weblayer_shell_resources",
"$google_play_services_package:google_play_services_base_java",
"//base:base_java", "//base:base_java",
"//third_party/android_deps:android_support_v4_java", "//third_party/android_deps:android_support_v4_java",
"//third_party/android_deps:android_support_v7_appcompat_java", "//third_party/android_deps:android_support_v7_appcompat_java",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment