2015-03-27 17 views
12

Desidero integrare G + Accedi (come da https://developers.google.com/+/mobile/ios/sign-in) in un'app React Native. Ho facebook Entra Nel lavorare con http://brentvatne.ca/facebook-login-with-react-native/ che sta funzionando perfettamente, ma non sono sicuro di cosa fare a questo punto dei G + docs:Implementare l'accesso a Google+ con React Native

Nel file .h del controller della vista, l'importazione GooglePlus/GooglePlus.h e dichiara che questa classe di controller implementa il protocollo GPPSignInDelegate

Se qualcuno può fornire alcuni esempi di puntatori/codice?

Grazie!

+0

Sto per implementare la stessa cosa. Hai ottenuto qualche intuizione? – Premasagar

+0

Non ho ancora @Premasagar! Ancora in attesa di una soluzione ... – DaBeeeenster

+1

Se qualcuno potesse pubblicare un esempio di app nativa reattiva con react-native-google-signin, lo apprezzerei molto. –

risposta

4

quindi questo è solo semi-legati alla Reagire Native, dal momento che il problema principale sembra essere la scrittura sul lato Obj-C del segno G + a A tal fine, afferrare l'Avvio app iOS rapido per Google Plus:.

https://developers.google.com/+/quickstart/ios

Seguire le istruzioni per aprire il progetto di esempio e troverete il file SignInViewController.m che contiene questa linea:

@interface SignInViewController() <GPPSignInDelegate> 

che sembra essere quello che stai dopo.

Una volta che funziona, sarà necessario implementare la connessione a React Native. Il Facebook Share si è collegato a spettacoli come fare, ma la documentazione ufficiale è qui:

http://facebook.github.io/react-native/docs/nativemodulesios.html#content

Ho anche scritto un post per mostrare il più semplice modulo nativo mi veniva in mente, che credo descrive il generale concetto piuttosto bene:

http://colinramsay.co.uk/2015/03/27/react-native-simple-native-module.html

+0

Grazie per la risposta Colin. C'è qualche esempio su come generare una nuova vista nativa da reagire? Immagino sia quello che devo fare qui, giusto? Scusate le mie abilità ObjC sono praticamente pari a zero ... – DaBeeeenster

+0

Anche le mie abilità Obj-C sono piuttosto mediocri, ma questo è il motivo per cui dico che ritengo che questo sia più un problema Obj-C che un React Native.Se vuoi fare questo genere di cose allora dovrai imparare almeno un po 'di Obj-C! Nella home page RN (http://facebook.github.io/react-native/) c'è un po 'di esposizione delle viste iOS personalizzate sotto l'intestazione "Estensibilità", che potrebbe essere un buon punto di partenza. –

6

EDIT 2017

nell'ambito dell'Expo, che è ora il d EFAULT per reagire-native apps, c'è costruito in Autenticazione Google disponibili:

documentazione Expo: https://docs.expo.io/versions/latest/sdk/google.html

Get Android e iOS client ids: https://console.developers.google.com/apis/credentials

import React from 'react' 
import Expo from 'expo' 
import Button from 'react-native-button' 

class Login extends React.Component { 
    signInWithGoogleAsync = async() => { 
    try { 
     const result = await Expo.Google.logInAsync({ 
     androidClientId: process.env.GOOGLE_ANDROID_CLIENT_ID, 
     iosClientId: process.env.GOOGLE_IOS_CLIENT_ID, 
     scopes: ['profile'], 
     }) 

     if (result.type === 'success') { 
     return result 
     } 
     return { cancelled: true } 
    } catch (e) { 
     return { error: e } 
    } 
    } 


    onLoginPress = async() => { 
    const result = await this.signInWithGoogleAsync() 
    // if there is no result.error or result.cancelled, the user is logged in 
    // do something with the result 
    } 

    render() { 
    return (<Button onPress={this.onLoginPress}>Login</Button>) 
    } 
} 

risposta Old

Ora esiste una libreria per l'accesso con Google+ per nativi react: https://github.com/devfd/react-native-google-signin

+0

Che non funziona correttamente –

+0

@ShariqMusharaf Ho aggiornato la risposta, spero che funzioni meglio per voi –

+0

Expo è lontano dal "default" per reagire nativo. Facebook ci sta lavorando, ma è un sistema diverso e tutte le apparenze non sono pronte per la prima serata, ad es. https://medium.com/2-minute-revolution-developer-blog/our-review-of-expo-and-why-we-dont-think-it-s-ready-for-prime-time-bb0897657295 –