[google_sign_in_web] Add a no-op Android implementation (#2410)
diff --git a/packages/google_sign_in/google_sign_in_web/CHANGELOG.md b/packages/google_sign_in/google_sign_in_web/CHANGELOG.md
index c314488..a41ce36 100644
--- a/packages/google_sign_in/google_sign_in_web/CHANGELOG.md
+++ b/packages/google_sign_in/google_sign_in_web/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.8.2+1
+
+* Add a non-op Android implementation to avoid a flaky Gradle issue.
+
## 0.8.2
* Require Flutter SDK 1.12.13+hotfix.4 or greater.
diff --git a/packages/google_sign_in/google_sign_in_web/android/build.gradle b/packages/google_sign_in/google_sign_in_web/android/build.gradle
new file mode 100644
index 0000000..c69092f
--- /dev/null
+++ b/packages/google_sign_in/google_sign_in_web/android/build.gradle
@@ -0,0 +1,33 @@
+group 'io.flutter.plugins.google_sign_in_web'
+version '1.0'
+
+buildscript {
+ repositories {
+ google()
+ jcenter()
+ }
+
+ dependencies {
+ classpath 'com.android.tools.build:gradle:3.5.0'
+ }
+}
+
+rootProject.allprojects {
+ repositories {
+ google()
+ jcenter()
+ }
+}
+
+apply plugin: 'com.android.library'
+
+android {
+ compileSdkVersion 28
+
+ defaultConfig {
+ minSdkVersion 16
+ }
+ lintOptions {
+ disable 'InvalidPackage'
+ }
+}
diff --git a/packages/google_sign_in/google_sign_in_web/android/gradle.properties b/packages/google_sign_in/google_sign_in_web/android/gradle.properties
new file mode 100644
index 0000000..7be3d8b
--- /dev/null
+++ b/packages/google_sign_in/google_sign_in_web/android/gradle.properties
@@ -0,0 +1,2 @@
+org.gradle.jvmargs=-Xmx1536M
+android.enableR8=true
diff --git a/packages/google_sign_in/google_sign_in_web/android/gradle/wrapper/gradle-wrapper.properties b/packages/google_sign_in/google_sign_in_web/android/gradle/wrapper/gradle-wrapper.properties
new file mode 100644
index 0000000..019065d
--- /dev/null
+++ b/packages/google_sign_in/google_sign_in_web/android/gradle/wrapper/gradle-wrapper.properties
@@ -0,0 +1,5 @@
+distributionBase=GRADLE_USER_HOME
+distributionPath=wrapper/dists
+zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip
diff --git a/packages/google_sign_in/google_sign_in_web/android/settings.gradle b/packages/google_sign_in/google_sign_in_web/android/settings.gradle
new file mode 100644
index 0000000..240e74e
--- /dev/null
+++ b/packages/google_sign_in/google_sign_in_web/android/settings.gradle
@@ -0,0 +1 @@
+rootProject.name = 'google_sign_in_web'
diff --git a/packages/google_sign_in/google_sign_in_web/android/src/main/AndroidManifest.xml b/packages/google_sign_in/google_sign_in_web/android/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..9921be4
--- /dev/null
+++ b/packages/google_sign_in/google_sign_in_web/android/src/main/AndroidManifest.xml
@@ -0,0 +1,3 @@
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="io.flutter.plugins.google_sign_in_web">
+</manifest>
diff --git a/packages/google_sign_in/google_sign_in_web/android/src/main/java/io/flutter/plugins/google_sign_in_web/GoogleSignInWebPlugin.java b/packages/google_sign_in/google_sign_in_web/android/src/main/java/io/flutter/plugins/google_sign_in_web/GoogleSignInWebPlugin.java
new file mode 100644
index 0000000..3b4fdcd
--- /dev/null
+++ b/packages/google_sign_in/google_sign_in_web/android/src/main/java/io/flutter/plugins/google_sign_in_web/GoogleSignInWebPlugin.java
@@ -0,0 +1,24 @@
+package io.flutter.plugins.google_sign_in_web;
+
+import io.flutter.embedding.engine.plugins.FlutterPlugin;
+import io.flutter.plugin.common.PluginRegistry.Registrar;
+
+/** GoogleSignInWebPlugin */
+public class GoogleSignInWebPlugin implements FlutterPlugin {
+ @Override
+ public void onAttachedToEngine(FlutterPluginBinding flutterPluginBinding) {}
+
+ // This static function is optional and equivalent to onAttachedToEngine. It supports the old
+ // pre-Flutter-1.12 Android projects. You are encouraged to continue supporting
+ // plugin registration via this function while apps migrate to use the new Android APIs
+ // post-flutter-1.12 via https://flutter.dev/go/android-project-migration.
+ //
+ // It is encouraged to share logic between onAttachedToEngine and registerWith to keep
+ // them functionally equivalent. Only one of onAttachedToEngine or registerWith will be called
+ // depending on the user's project. onAttachedToEngine or registerWith must both be defined
+ // in the same class.
+ public static void registerWith(Registrar registrar) {}
+
+ @Override
+ public void onDetachedFromEngine(FlutterPluginBinding binding) {}
+}
diff --git a/packages/google_sign_in/google_sign_in_web/pubspec.yaml b/packages/google_sign_in/google_sign_in_web/pubspec.yaml
index 5f4cfcd..2790ef8 100644
--- a/packages/google_sign_in/google_sign_in_web/pubspec.yaml
+++ b/packages/google_sign_in/google_sign_in_web/pubspec.yaml
@@ -2,7 +2,7 @@
description: Flutter plugin for Google Sign-In, a secure authentication system
for signing in with a Google account on Android, iOS and Web.
homepage: https://github.com/flutter/plugins/tree/master/packages/google_sign_in/google_sign_in_web
-version: 0.8.2
+version: 0.8.2+1
flutter:
plugin: