Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Google SignIn with raw plugin and UPM #240

Open
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

Thaina
Copy link

@Thaina Thaina commented Oct 9, 2023

  • Update ios version from @CodeMasterYi branch
  • Remove googleSignIn.jar build system. Use raw java as plugin with unity build pipeline instead
  • Add support for Editor signin with HttpListener (require clientSecret property)
  • Restructure folder and add package.json to support UPM

CodeMasterYi and others added 3 commits December 16, 2021 11:26
> convert to direct unity call to java
add signin in editor and desktop support
@Thaina Thaina force-pushed the master branch 5 times, most recently from 08010fc to 49623a2 Compare October 10, 2023 06:21
@dharmeshmp
Copy link

Hi @Thaina

We implemented your package but facing issues.

Library/PackageCache/com.google.signin@57a9a9a253/GoogleSignIn/Impl/GoogleSignInImplEditor.cs(105,33): error CS1069: The type name 'HttpUtility' could not be found in the namespace 'System.Web'. This type has been forwarded to assembly 'System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' Consider adding a reference to that assembly.

This error when we switch platforms other than iOS.

@Thaina
Copy link
Author

Thaina commented Oct 16, 2023

HttpUtility should be related to dotnet version in the project I think. Maybe try to use netstandard?

@dharmeshmp
Copy link

Are you able to build for Android?

@Thaina
Copy link
Author

Thaina commented Oct 16, 2023

Yes. actually had been only built for android at first

Maybe something changed after I try to make it buildable on macos, let me test a bit

@Thaina
Copy link
Author

Thaina commented Oct 16, 2023

It built to android normally in my windows machine

My project is 2023.1.11 with netstandard 2.1 and IL2CPP backend

@dharmeshmp
Copy link

dharmeshmp commented Oct 16, 2023

I am using Unity 2022.3.10 also tried netstandard 2.1 and IL2CPP with Mac OS.
Still facing the issue. But when I switch to iOS it's working fine.

Let me try with Unity 2023.

Screenshot 2023-10-16 at 12 56 07 PM

@Thaina
Copy link
Author

Thaina commented Oct 16, 2023

Maybe you also need to install new version of dotnet too?

@dharmeshmp
Copy link

Tried in Unity 2023.1 but still had the same issue. Not understand what caused the issue?

@dharmeshmp
Copy link

Now it's working fine in Unity 2022.3.10 with netstandard 2.1.
Maybe I made a mistake in changing from net-framework to net-standard.

@pinnakkkk
Copy link

pinnakkkk commented Oct 18, 2023

Hello @Thaina, I installed the plugin by copying the files and I encountered several.
error CS1503: Argument 1: cannot convert from 'System.IntPtr' to 'string'

 static IntPtr GoogleSignIn_Create(IntPtr activity)
    {
      parentActivity = new AndroidJavaObject(activity);

      return GoogleSignInFragment.CallStatic<AndroidJavaObject>("getInstance",parentActivity).GetRawObject();
    } 

the AndroidJavaObject expects a class name as string but it's passing intptr.

@Thaina
Copy link
Author

Thaina commented Oct 18, 2023

Hello @Thaina, I installed the plugin by copying the files and I encountered several. error CS1503: Argument 1: cannot convert from 'System.IntPtr' to 'string'

 static IntPtr GoogleSignIn_Create(IntPtr activity)
    {
      parentActivity = new AndroidJavaObject(activity);

      return GoogleSignInFragment.CallStatic<AndroidJavaObject>("getInstance",parentActivity).GetRawObject();
    } 

the AndroidJavaObject expects a class name as string but it's passing intptr.

Thank you for your report. It seem the constructor of AndroidJavaObject that can accept IntPtr only introduced after 2022.2 https://docs.unity3d.com/2022.2/Documentation/ScriptReference/AndroidJavaObject-ctor.html

Could you backup your project and try in 2022.2 ? I will try to find the solution later

@pinnakkkk
Copy link

Hello @Thaina, I installed the plugin by copying the files and I encountered several. error CS1503: Argument 1: cannot convert from 'System.IntPtr' to 'string'

 static IntPtr GoogleSignIn_Create(IntPtr activity)
    {
      parentActivity = new AndroidJavaObject(activity);

      return GoogleSignInFragment.CallStatic<AndroidJavaObject>("getInstance",parentActivity).GetRawObject();
    } 

the AndroidJavaObject expects a class name as string but it's passing intptr.

Thank you for your report. It seem the constructor of AndroidJavaObject that can accept IntPtr only introduced after 2022.2 https://docs.unity3d.com/2022.2/Documentation/ScriptReference/AndroidJavaObject-ctor.html

Could you backup your project and try in 2022.2 ? I will try to find the solution later

Thank you for quick reply, I'll try with 2022.2 LTS and get back to you.

@Thaina
Copy link
Author

Thaina commented Oct 19, 2023

I have update new version to hack and call internal constructor with reflection. I have test and seem to work in unity 2021.3.20

@pinnakkkk
Copy link

Hello @Thaina, I installed the plugin by copying the files and I encountered several. error CS1503: Argument 1: cannot convert from 'System.IntPtr' to 'string'

 static IntPtr GoogleSignIn_Create(IntPtr activity)
    {
      parentActivity = new AndroidJavaObject(activity);

      return GoogleSignInFragment.CallStatic<AndroidJavaObject>("getInstance",parentActivity).GetRawObject();
    } 

the AndroidJavaObject expects a class name as string but it's passing intptr.

Thank you for your report. It seem the constructor of AndroidJavaObject that can accept IntPtr only introduced after 2022.2 https://docs.unity3d.com/2022.2/Documentation/ScriptReference/AndroidJavaObject-ctor.html
Could you backup your project and try in 2022.2 ? I will try to find the solution later

Thank you for quick reply, I'll try with 2022.2 LTS and get back to you.

@Thaina after switching to 2022.3 LTS it worked!

@pinnakkkk
Copy link

call internal constructor with reflection.

I will check it out. Also does this version ship with androidX lib? if yes how can I remove it as I have installed another plugin that ships with latest androidX lib.

@Thaina
Copy link
Author

Thaina commented Oct 19, 2023

I don't think I have put any lib in my project. But I have add that this new version will require external dependency manager (google jar resolver)

It was also specified com.google.android.gms:play-services-auth:20+ in GoogleSignInDependencies.xml. Which in turns will trigger resolver to pull native library or anything it needs up to your project setting

In my case, I have always set my unity project to use mainTemplate.gradle and gradleTemplate.properties. But if I don't it seem the resolver will just pull all library into the project by default

With config to enabled mainTemplate.gradle and gradleTemplate.properties. The resolver will patch these files to pull the dependencies at the build time instead

@NilokiloxD
Copy link

When building with stripping to android signIn works but signOut throws:

AndroidJavaException: java.lang.NoSuchMethodError: no static method with name='signOut' signature='(Lcom.google.googlesignin.GoogleSignInFragment;)V' in class Ljava.lang.Object;

Also proguard does NOT help with
-keep class com.google.googlesignin.** { ; }
-keepnames class com.google.googlesignin.
{ ; }
-keep class com.google.android.gms.auth.
* { *; }

Any idea why?

@Thaina
Copy link
Author

Thaina commented Nov 3, 2023

I don't know a thing about stripping though. Is it work for you without stripping?

@NilokiloxD
Copy link

Yes it works without stripping, but I found the solution, in the googleImpl the sign out method takes an activity parameter but an android object is passed instead of parentActivity.

@Thaina
Copy link
Author

Thaina commented Nov 8, 2023

Could you please tell me the line number? That's weird reason when it work without stripping

@Kevin-FDG
Copy link

I had the same error as @NilokiloxD and was able to fix it by changing
static void GoogleSignIn_Signout(HandleRef self) => GoogleSignInHelper.CallStatic("signOut",self.ToAndroidJavaObject());
to
static void GoogleSignIn_Signout(HandleRef self) => GoogleSignInHelper.CallStatic("signOut",parentActivity);
in GoogleSignInImpl.cs line 183

Fix signOut and disconnect
@Thaina
Copy link
Author

Thaina commented Nov 9, 2023

Thank you very much. I have update the code as you suggest

@pinnakkkk
Copy link

@Thaina The app crashes when signin is called and cancelled. Also can we get events when the signin is called? like when a user cancels the google account selection prompt or cancels on permission page?

@Thaina
Copy link
Author

Thaina commented Dec 11, 2023

@pinnakkkk Are there any error log I can see?

About the event though, the signIn function is direct call so there should not need side effect event. I think anyone could wrap it in their own system instead

And if user cancelled or any other kind of unsuccessful login, the correct behaviour is the task (Future) would return null

@pinnakkkk
Copy link

pinnakkkk commented Dec 12, 2023

if user cancelled or any other kind of unsuccessful

So the app crashes when u have signed in, closed the app and try to sign in again.
does that mean i have to logout every time and login with google every time?

Logs

2023-12-13 01:02:44.191 12050 12085 Error CRASH Build fingerprint: 'google/panther/panther:13/TQ3A.230901.001/10750268:user/release-keys'
2023-12-13 01:02:44.191 12050 12085 Error CRASH Revision: 'MP1.0'
2023-12-13 01:02:44.191 12050 12085 Error CRASH ABI: 'arm64'
2023-12-13 01:02:44.191 12050 12085 Error CRASH Timestamp: 2023-12-13 01:02:44+0530
2023-12-13 01:02:44.191 12050 12085 Error CRASH pid: 12050, tid: 12085, name: UnityMain  >>> vision.shakespeare.shakespeareAE <<<
2023-12-13 01:02:44.191 12050 12085 Error CRASH uid: 10385
2023-12-13 01:02:44.191 12050 12085 Error CRASH signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0
2023-12-13 01:02:44.191 12050 12085 Error CRASH Cause: null pointer dereference
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x0  0000000000000000  x1  0000000000000051  x2  00000077a7b4e990  x3  0000007771420158
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x4  0000000000000030  x5  0000000000000000  x6  0000000000000080  x7  ff666d68636d644f
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x8  0000007601b71604  x9  d65134b1eece7964  x10 0000000000000040  x11 0000000000000014
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x12 000000000000110f  x13 d7016a315cd17c87  x14 0000007a2b4ddb86  x15 000000000000000a
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x16 00000076de070808  x17 0000007a0bf3b050  x18 00000000000b0000  x19 b400007787a7cbb0
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x20 00000076de297000  x21 00000076de295000  x22 00000076de1ffeb0  x23 0000000000000002
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x24 0000007771422000  x25 00000076b017a160  x26 0000007771422000  x27 0000000000000001
2023-12-13 01:02:44.191 12050 12085 Error CRASH     x28 00000076de247050  x29 0000007771420380
2023-12-13 01:02:44.191 12050 12085 Error CRASH     sp  00000077714202a0  lr  00000076dd508c08  pc  0000007601b71608
2023-12-13 01:02:44.191 12050 12085 Error CRASH backtrace:
2023-12-13 01:02:44.191 12050 12085 Error CRASH       #00 pc 000000000000b608  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libnative-googlesignin.so (GoogleSignIn_Pending+4) (BuildId: a093eb15516d5796589d881687a62d11f1763a1c)
2023-12-13 01:02:44.191 12050 12085 Error CRASH       #01 pc 00000000020e6c04  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.191 12050 12085 Error CRASH       #02 pc 00000000009f5d48  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.191 12050 12085 Error CRASH       #03 pc 0000000001c98b84  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.191 12050 12085 Error CRASH       #04 pc 0000000001c9a00c  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #05 pc 00000000008d0abc  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #06 pc 00000000008d0930  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #07 pc 00000000002d7e1c  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #08 pc 00000000002e6c30  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #09 pc 00000000002f29dc  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #10 pc 00000000002f25e4  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #11 pc 00000000002f45e0  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #12 pc 00000000002f2cf0  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #13 pc 00000000002f2b08  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #14 pc 00000000002f265c  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #15 pc 00000000002f45e0  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #16 pc 00000000002f49e0  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #17 pc 00000000000f7db8  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #18 pc 00000000020e5da8  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #19 pc 0000000001c10b74  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #20 pc 0000000001ec2ab4  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #21 pc 0000000001a21b1c  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #22 pc 0000000000b36d14  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #23 pc 0000000000b3642c  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #24 pc 0000000000b3b660  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #25 pc 00000000008d0abc  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #26 pc 00000000008d0930  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libil2cpp.so (BuildId: 6a033b587eb0dad9061fccd45936db2fd504a903)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #27 pc 00000000002d7e1c  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #28 pc 00000000002e6c30  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #29 pc 00000000002f4398  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #30 pc 00000000001756fc  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #31 pc 000000000021ea60  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #32 pc 000000000021eaa0  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #33 pc 000000000021ecd8  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #34 pc 0000000000364020  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.192 12050 12085 Error CRASH       #35 pc 000000000037b9cc  /data/app/~~IstYuLm8gTQuQrkR_65QEw==/vision.shakespeare.shakespeareAE-uexoG_ELV-Airilk-_CZWw==/lib/arm64/libunity.so (BuildId: 9d07a1662ed49ab86c13a07da1bb1d862e25c0b7)
2023-12-13 01:02:44.206 12050 12085 Error CRASH       #36 pc 0000000000355830  /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+144) (BuildId: 735f12f804f88d62a2cb437261076ff7)
2023-12-13 01:02:44.209 12050 12085 Error CRASH       #37 pc 00000000005ba6b0  /apex/com.android.art/lib64/libart.so (nterp_helper+4016) (BuildId: 735f12f804f88d62a2cb437261076ff7)
2023-12-13 01:02:44.209 12050 12085 Error CRASH       #38 pc 0000000002015184  /memfd:jit-cache (deleted)

@CodeMasterYi
Copy link

CodeMasterYi commented Dec 13, 2023

Why should we integrate UPM into GoogleSignIn plugin?
I think it should be an independent one.

WAIT! What is UPM?
Do you mean UMP by saying 'UPM'?

Sorry I misunderstand it. I think it is short for 'Unity Package Manager', right?

@pinnakkkk
Copy link

@Thaina can confirm same behavior on IOS too.

@luzay
Copy link

luzay commented Dec 13, 2023

Pixel2,when clicked Button “Sign in”, after select account, the app crashed. But when build in mono, it worked.

Unity2021.3.21f1
il2cpp armv7&arm64
.Net standard 2.1

2023-12-14 17:50:37.247 3258-3258/com.. D/SignInFragment: onActivityResult: 9009 -1
2023-12-14 17:50:37.248 3258-3258/com.. D/TokenPendingResult: Calling onResult for callback. result: Status: Status{statusCode=SUCCESS, resolution=null} com.google.android.gms.auth.api.signin.GoogleSignInAccount@b2b1b35c
2023-12-14 17:50:37.256 3258-3258/com.. D/SignInFragment: Calling nativeOnResult: handle: Google.Impl.GoogleSignInImpl+SignInListener <c# proxy java object>, status: 0 acct: com.google.android.gms.auth.api.signin.GoogleSignInAccount@b2b1b35c
2023-12-14 17:50:37.266 3258-3258/com.. I/Unity: googlesignin.IListener : com.google.android.gms.auth.api.signin.GoogleSignInAccount@b2b1b35c
Google.Impl.SignInListener:OnResult(Int32, AndroidJavaObject)
System.Reflection.RuntimeMethodInfo:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
UnityEngine.AndroidJavaProxy:Invoke(String, Object[])
UnityEngine._AndroidJNIHelper:InvokeJavaProxyMethod(AndroidJavaProxy, IntPtr, IntPtr)
2023-12-14 17:50:37.267 3258-3258/com.. I/Unity: ID : 117909594666169169310
System.Reflection.RuntimeMethodInfo:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
UnityEngine.AndroidJavaProxy:Invoke(String, Object[])
UnityEngine._AndroidJNIHelper:InvokeJavaProxyMethod(AndroidJavaProxy, IntPtr, IntPtr)
2023-12-14 17:50:37.268 3258-3258/com.. D/Unity: onActivityResumed: com.unity3d.player.UnityPlayerActivity@5e5e140
2023-12-14 17:50:37.269 3258-3258/com.. I/Unity: onResume
2023-12-14 17:50:37.271 3258-3258/com.. D/SignInFragment: onResume called
2023-12-14 17:50:37.271 3258-3258/com.. D/SignInFragment: State is now ready
2023-12-14 17:50:37.295 3258-3258/com.. I/Unity: windowFocusChanged: true
2023-12-14 17:50:37.316 3258-3285/com.. D/Unity: Sensor : Accelerometer ( 1) ; 0.002396 / 0.00s ; LSM6DSM Accelerometer / STMicroelectronics
2023-12-14 17:50:37.316 3258-3285/com.. D/Unity: Choreographer available: Enabling VSYNC timing
2023-12-14 17:50:37.316 3258-3285/com.. D/Unity: Found 1 interfaces on host Google_Pixel_2@172.16.62.215:
2023-12-14 17:50:37.316 3258-3285/com.. D/Unity: 0) 172.16.62.215
2023-12-14 17:50:37.316 3258-3285/com.. D/Unity:
2023-12-14 17:50:37.317 3258-3285/com.. D/Unity: Multi-casting "[IP] 172.16.62.215 [Port] 55000 [Flags] 2 [Guid] 1710160627 [EditorId] 3926812232 [Version] 1048832 [Id] AndroidPlayer(11,Google_Pixel_2@172.16.62.215) [Debug] 0 [PackageName] AndroidPlayer [ProjectName] googlesigninunityThaina" to [225.0.0.222:54997]...
2023-12-14 17:50:37.320 3258-3285/com.. D/CompatibilityChangeReporter: Compat change id reported: 147600208; UID 10555; state: ENABLED
2023-12-14 17:50:37.331 3258-3258/com.. V/MediaRouter: Selecting route: RouteInfo{ name=手机, description=null, status=null, category=RouteCategory{ name=系统 types=ROUTE_TYPE_LIVE_AUDIO ROUTE_TYPE_LIVE_VIDEO groupable=false }, supportedTypes=ROUTE_TYPE_LIVE_AUDIO ROUTE_TYPE_LIVE_VIDEO , presentationDisplay=null }
2023-12-14 17:50:37.334 3258-3285/com.. I/Unity: Void .ctor(IntPtr)
Google.Impl.Ext:ToAndroidJavaObject(IntPtr&)
Google.Impl.GoogleSignInImpl:GoogleSignIn_Status(HandleRef)
Google.d__8:MoveNext()
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
2023-12-14 17:50:37.334 3258-3285/com.. E/com..: JNI ERROR (app bug): accessed deleted Global 0x3242
2023-12-14 17:50:37.334 3258-3285/com.. A/com..: java_vm_ext.cc:577] JNI DETECTED ERROR IN APPLICATION: use of deleted global reference 0x3242
java_vm_ext.cc:577] from boolean com.unity3d.player.UnityPlayer.nativeRender()
2023-12-14 17:50:37.530 3258-3285/com.. A/com..: runtime.cc:655] Runtime aborting...
runtime.cc:655] Dumping all threads without mutator lock held
runtime.cc:655] All threads:
runtime.cc:655] DALVIK THREADS (25):
runtime.cc:655] "UnityMain" prio=5 tid=18 Runnable
runtime.cc:655] | group="" sCount=0 dsCount=0 flags=0 obj=0x136006d8 self=0x71bdc7e3f0
runtime.cc:655] | sysTid=3285 nice=0 cgrp=default sched=0/0 handle=0x6fe113fcc0
runtime.cc:655] | state=R schedstat=( 1131617438 54383788 1351 ) utm=93 stm=19 core=4 HZ=100
runtime.cc:655] | stack=0x6fe103c000-0x6fe103e000 stackSize=1043KB
runtime.cc:655] | held mutexes= "abort lock" "mutator lock"(shared held)
runtime.cc:655] native: #00 pc 00000000004a53f4 /apex/com.android.art/lib64/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool)+140)
runtime.cc:655] native: #1 pc 00000000005b42b4 /apex/com.android.art/lib64/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits >&, bool, BacktraceMap*, bool) const+372)
runtime.cc:655] native: #2 pc 00000000005d1854 /apex/com.android.art/lib64/libart.so (art::DumpCheckpoint::Run(art::Thread*)+924)
runtime.cc:655] native: #3 pc 00000000005cb6c4 /apex/com.android.art/lib64/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+532)
runtime.cc:655] native: #4 pc 00000000005ca844 /apex/com.android.art/lib64/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits >&, bool)+1876)
runtime.cc:655] native: #5 pc 000000000056462c /apex/com.android.art/lib64/libart.so (art::Runtime::Abort(char const*)+1876)
runtime.cc:655] native: #6 pc 0000000000013ab0 /system/lib64/libbase.so (android::base::SetAborter(std::__1::function<void (char const*)>&&)::$_3::__invoke(char const*)+80)
runtime.cc:655] native: #7 pc 0000000000013090 /system/lib64/libbase.so (android::base::LogMessage::~LogMessage()+320)
runtime.cc:655] native: #8 pc 0000000000389da8 /apex/com.android.art/lib64/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+2608)
runtime.cc:655] native: #9 pc 0000000000389f1c /apex/com.android.art/lib64/libart.so (art::JavaVMExt::JniAbortF(char const*, char const*, ...)+188)
runtime.cc:655] native: #10 pc 00000000005bab64 /apex/com.android.art/lib64/libart.so (art::Thread::DecodeJObject(_jobject*) const+748)
runtime.cc:655] native: #11 pc 000000000037ad64 /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::CheckInstance(art::ScopedObjectAccess&, art::(anonymous namespace)::ScopedCheck::InstanceKind, _jobject*, bool)+132)
runtime.cc:655] native: #12 pc 00000000003799dc /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::CheckPossibleHeapValue(art::ScopedObjectAccess&, char, art::(anonymous namespace)::JniValueType)+572)
runtime.cc:655] native: #13 pc 000000000037902c /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::ScopedCheck::Check(art::ScopedObjectAccess&, bool, char const*, art::(anonymous namespace)::JniValueType*)+612)
runtime.cc:655] native: #14 pc 000000000036a220 /apex/com.android.art/lib64/libart.so (art::(anonymous namespace)::CheckJNI::GetObjectClass(_JNIEnv*, _jobject*)+688)
runtime.cc:655] native: #15 pc 000000000036cc28 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (AndroidJNIBindingsHelpers::GetObjectClass(void*)+84)
runtime.cc:655] native: #16 pc 0000000000a05c24 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #17 pc 0000000000a0eee4 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #18 pc 00000000003a785c /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
2023-12-14 17:50:37.530 3258-3285/com.. A/com..: runtime.cc:655] native: #19 pc 00000000003a76d0 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #20 pc 00000000003a7d50 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #21 pc 00000000003e1730 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #22 pc 00000000008b36c8 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #23 pc 000000000081c414 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #24 pc 000000000081c754 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #25 pc 000000000051ce98 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #26 pc 0000000000a2a290 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #27 pc 00000000003a785c /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #28 pc 00000000003a76d0 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libil2cpp.so (???)
runtime.cc:655] native: #29 pc 0000000000bf0b48 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (scripting_method_invoke(ScriptingMethodPtr, ScriptingObjectPtr, ScriptingArguments&, ScriptingExceptionPtr*, bool)+164)
runtime.cc:655] native: #30 pc 0000000000c01f90 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (ScriptingInvocation::Invoke(ScriptingExceptionPtr*, bool)+156)
runtime.cc:655] native: #31 pc 0000000000c12f8c /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (Coroutine::InvokeMoveNext(ScriptingExceptionPtr*)+156)
runtime.cc:655] native: #32 pc 0000000000c12b4c /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (Coroutine::Run(bool*)+44)
runtime.cc:655] native: #33 pc 00000000006a8e78 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (DelayedCallManager::Update(int)+552)
runtime.cc:655] native: #34 pc 00000000008739c0 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (InitPlayerLoopCallbacks()::UpdateScriptRunDelayedDynamicFrameRateRegistrator::Forward()+72)
runtime.cc:655] native: #35 pc 0000000000874554 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (ExecutePlayerLoop(NativePlayerLoopSystem*)+92)
runtime.cc:655] native: #36 pc 0000000000874594 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (ExecutePlayerLoop(NativePlayerLoopSystem*)+156)
runtime.cc:655] native: #37 pc 0000000000874834 /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (PlayerLoop()+312)
runtime.cc:655] native: #38 pc 0000000000caa16c /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (UnityPlayerLoop()+824)
runtime.cc:655] native: #39 pc 0000000000cdd48c /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/lib/arm64/libunity.so (nativeRender(_JNIEnv*, _jobject*)+72)
runtime.cc:655] native: #40 pc 000000000013ced4 /apex/com.android.art/lib64/libart.so (art_quick_generic_jni_trampoline+148)
2023-12-14 17:50:37.530 3258-3285/com.. A/com..: runtime.cc:655] native: #41 pc 0000000000133564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)
runtime.cc:655] native: #42 pc 00000000001a97e8 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200)
runtime.cc:655] native: #43 pc 000000000031c040 /apex/com.android.art/lib64/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+376)
runtime.cc:655] native: #44 pc 0000000000312228 /apex/com.android.art/lib64/libart.so (bool art::interpreter::DoCall<false, false>(art::ArtMethod*, art::Thread*, art::ShadowFrame&, art::Instruction const*, unsigned short, art::JValue*)+912)
runtime.cc:655] native: #45 pc 0000000000687d48 /apex/com.android.art/lib64/libart.so (MterpInvokeDirect+576)
runtime.cc:655] native: #46 pc 000000000012d914 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_direct+20)
runtime.cc:655] native: #47 pc 0000000000146368 [anon:dalvik-classes.dex extracted in memory from /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/base.apk] (com.unity3d.player.UnityPlayer.access$500)
runtime.cc:655] native: #48 pc 00000000006888c0 /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+1224)
runtime.cc:655] native: #49 pc 000000000012d994 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20)
runtime.cc:655] native: #50 pc 0000000000145cb8 [anon:dalvik-classes.dex extracted in memory from /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/base.apk] (com.unity3d.player.UnityPlayer$e$1.handleMessage+252)
runtime.cc:655] native: #51 pc 00000000006873a4 /apex/com.android.art/lib64/libart.so (MterpInvokeInterface+1812)
runtime.cc:655] native: #52 pc 000000000012da14 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_interface+20)
runtime.cc:655] native: #53 pc 000000000036f2ac /system/framework/framework.jar (offset 92b000) (android.os.Handler.dispatchMessage+24)
runtime.cc:655] native: #54 pc 0000000000685960 /apex/com.android.art/lib64/libart.so (MterpInvokeVirtual+1520)
runtime.cc:655] native: #55 pc 000000000012d814 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_virtual+20)
runtime.cc:655] native: #56 pc 0000000000396ab6 /system/framework/framework.jar (offset 92b000) (android.os.Looper.loop+482)
runtime.cc:655] native: #57 pc 00000000006888c0 /apex/com.android.art/lib64/libart.so (MterpInvokeStatic+1224)
runtime.cc:655] native: #58 pc 000000000012d994 /apex/com.android.art/lib64/libart.so (mterp_op_invoke_static+20)
runtime.cc:655] native: #59 pc 00000000001460b4 [anon:dalvik-classes.dex extracted in memory from /data/app/~~w7J68iimUFeqzhAhMgGKIQ==/com..--0x-qcZHQCyi1O1XOypgAQ==/base.apk] (com.unity3d.player.UnityPlayer$e.run+40)
runtime.cc:655] native: #60 pc 00000000003094d0 /apex/com.android.art/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::CodeItemDataAccessor const&, art::ShadowFrame&, art::JValue, bool, bool) (.llvm.7618685802058321727)+264)
runtime.cc:655] native: #61 pc 00000000006740c0 /apex/com.android.art/lib64/libart.so (artQuickToInterpreterBridge+776)
runtime.cc:655] native: #62 pc 000000000013cff8 /apex/com.android.art/lib64/libart.so (art_quick_to_interpreter_bridge+88)
runtime.cc:655] native: #63 pc 0000000000133564 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+548)
runtime.cc:655] native: #64 pc 00000000001a97e8 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+200)
runtime.cc:655] native: #65 pc 000000000055c384 /apex/com.android.art/lib64/libart.so (art::JValue art::InvokeVirtualOrInterfaceWithJValuesart::ArtMethod*(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, art::ArtMethod*, jvalue const*)+460)
2023-12-14 17:50:37.530 3258-3285/com.. A/com..: runtime.cc:655] native: #66 pc 00000000005ac204 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1308)
runtime.cc:655] native: #67 pc 00000000000b0758 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+64)
runtime.cc:655] native: #68 pc 0000000000050150 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64)
runtime.cc:655] at com.unity3d.player.UnityPlayer.nativeRender(Native method)
runtime.cc:655] at com.unity3d.player.UnityPlayer.access$500(unavailable:-1)
runtime.cc:655] at com.unity3d.player.UnityPlayer$e$1.handleMessage(unavailable:-1)
runtime.cc:655] at android.os.Handler.dispatchMessage(Handler.java:102)
runtime.cc:655] at android.os.Looper.loop(Looper.java:223)
runtime.cc:655] at com.unity3d.player.UnityPlayer$e.run(unavailable:-1)

@Thaina
Copy link
Author

Thaina commented Dec 13, 2023

Why should we integrate UPM into GoogleSignIn plugin? I think it should be an independent one.

WAIT! What is UPM? Do you mean UMP by saying 'UPM'?

Sorry I misunderstand it. I think it is short for 'Unity Package Manager', right?

Yes

@Thaina
Copy link
Author

Thaina commented Dec 13, 2023

@pinnakkkk I now try to pinpoint which code that try to access null and make the crash. Still not found which. It was not crash in my device, only error

@nixonjoshua98
Copy link

What version is this supposed to work on? Brand new project and cant build for droid
image

@Thaina
Copy link
Author

Thaina commented Jan 21, 2024

@jfschmakeit I think that might be about gradle setting, such as androidx and jetifier

@Thaina
Copy link
Author

Thaina commented Jun 10, 2024

I have made a new branch that migrate this package into the new version of google signin system

#256

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants