Book Image

React Native By Example

By : Richard Kho
Book Image

React Native By Example

By: Richard Kho

Overview of this book

React Native's ability to build performant mobile applications with JavaScript has resulted in its popularity amongst developers. Developers now have the luxury to create incredible mobile experiences that look and feel native to their platforms with the comfort of a well-known language and the popular React.js library. This book will show you how to build your own native mobile applications for the iOS and Android platforms while leveraging the finesse and simplicity of JavaScript and React. Throughout the book you will build three projects, each of increasing complexity. You will also link up with the third-party Facebook SDK, convert an app to support the Redux architecture, and learn the process involved in making your apps available for sale on the iOS App Store and Google Play. At the end of this book, you will have learned and implemented a wide breadth of core APIs and components found in the React Native framework that are necessary in creating great mobile experiences.
Table of Contents (17 chapters)
Title Page
About the Author
About the Reviewer
Customer Feedback

Logging in with the Facebook SDK

The first thing we can try in our app is logging in the user. The FBSDK has access to a built-in component called LoginButton that, on press, will send the user to a login screen using a WebView while being within the app. If the login is successful, an access token will be saved for your app to make use of, without you needing to personally track it.

Start by adding the LoginButton snippet found in the FBSDK repository's README to your app's index file. You'll get something like this:

// Friends/index.ios.js 

import React, { Component } from 'react'; 
import { 
} from 'react-native'; 

import { 
} from 'react-native-fbsdk'; 

Import the AccessToken and LoginButton modules from the react-native-fbsdk repo, using destructuring notation.

export default class Friends extends Component { 
  render() { 
    return ( 
      <View style={ styles.container }>