Google-signin: Compatibility with the Share Extension

Created on 22 Jun 2017  路  7Comments  路  Source: react-native-google-signin/google-signin

https://github.com/alinz/react-native-share-extension/issues/18#issuecomment-273540136

There seems to be an issue between these two packages.

When the Share Extension fires, it complains about this:

2017-06-22 14:44:25.327 [error][tid:com.facebook.react.JavaScript] undefined is not an object (evaluating 'RNGoogleSignin.BUTTON_SIZE_ICON')
2017-06-22 14:44:25.328 [fatal][tid:com.facebook.react.ExceptionsManagerQueue] Unhandled JS Exception: undefined is not an object (evaluating 'RNGoogleSignin.BUTTON_SIZE_ICON')

I cannot include libRNGoogleSignin.a as the share extension needs -ObjC enabled, which this package does not enjoy.

Any tips/hacks around this? The extension does not need the Google sign in button; in fact its not even being used ;)

Question

Most helpful comment

If I include the library, this is what I get:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_GIDSignInButton", referenced from:
      objc-class-ref in libRNGoogleSignin.a(RNGoogleSigninButtonManager.o)
  "_OBJC_CLASS_$_GIDSignIn", referenced from:
      objc-class-ref in libRNGoogleSignin.a(RNGoogleSignin.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

All 7 comments

If I include the library, this is what I get:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_GIDSignInButton", referenced from:
      objc-class-ref in libRNGoogleSignin.a(RNGoogleSigninButtonManager.o)
  "_OBJC_CLASS_$_GIDSignIn", referenced from:
      objc-class-ref in libRNGoogleSignin.a(RNGoogleSignin.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I'm not using react-native-share-extension but I'm seeing this exact error. Were you able to resolve it?

any update so far???

@njt1982 Do you have any updates? Same problem

@NikitaPokryshko IIRC I solved it by rewriting my share extension in pure Swift and not using React at all. When I share now, I trigger URL to open that uses an app-specific protocol and route. Eg myapp://section/123 (where 123 is a model ID). This opens in my app and I setup that app based on that.

@njt1982 Thank you for reply. Maybe you can share example of your Swift extension? It will be very helpful

I'm gonna close this issue since it's not a bug related directly to our Library. But please continue this discussion. We should should be releasing a new version of this lib soon with many fixes and improvements which hopefully will fix this too.

Please feel free to open a new issue if this problem persists.

Thank you.

Was this page helpful?
0 / 5 - 0 ratings