- From what I've read about react native is that it's not a 'Write once, run everywhere' framework. So you still have to code 2 Apps but you can use the same language for it and don't have to learn two. But it should feel like a completely native app and run faster than the other Cross Platform frameworks. – PascalAC May 5 '15 at 9:24.
- React Native Dating App With Backend NativeBase Market. Tinder like React Native Dating Backend for iOS & Android with Admin Dashboard. Built using GraphQL, GraphCool, NativeBase. Implemented with.
The package name is react-native-audio-recorder-player. The package is easy to configure and provides us with robust modules and components to implement an audio recorder and player in React Native applications. Without further ado, let’s get started!
Facebook Supported, Community Driven
Facebook released React Native in 2015 and has been maintaining it ever since.
In 2018, React Native had the 2nd highest number of contributors for any repository in GitHub. Today, React Native is supported by contributions from individuals and companies around the world including Callstack, Expo, Infinite Red, Microsoft and Software Mansion.
Our community is always shipping exciting new projects and exploring platforms beyond Android and iOS with repos like React Native Windows, React Native macOS and React Native Web.
React Native is being used in thousands of apps, but it's likely you've already used it in one of these apps:
and many more.
It's always a good idea to test your app on an actual device before releasing it to your users. This document will guide you through the necessary steps to run your React Native app on a device and to get it ready for production.
If you used Expo CLI or Create React Native App to set up your project, you can preview your app on a device by scanning the QR code with the Expo app—but in order to build and run your app on a device, you will need to eject and install the native code dependencies from the environment setup guide.
- Android
- iOS
Running your app on Android devices#
Development OS#
- macOS
- Windows
- Linux
1. Enable Debugging over USB#
Most Android devices can only install and run apps downloaded from Google Play, by default. You will need to enable USB Debugging on your device in order to install your app during development.
To enable USB debugging on your device, you will first need to enable the 'Developer options' menu by going to Settings → About phone → Software information and then tapping the Build number
row at the bottom seven times. You can then go back to Settings → Developer options to enable 'USB debugging'.
2. Plug in your device via USB#
Let's now set up an Android device to run our React Native projects. Go ahead and plug in your device via USB to your development machine.
Next, check the manufacturer code by using lsusb
(on mac, you must first install lsusb). lsusb
should output something like this:
These lines represent the USB devices currently connected to your machine.
You want the line that represents your phone. If you're in doubt, try unplugging your phone and running the command again:
You'll see that after removing the phone, the line which has the phone model ('Motorola PCS' in this case) disappeared from the list. This is the line that we care about.
Bus 001 Device 003: ID 22b8:2e76 Motorola PCS
From the above line, you want to grab the first four digits from the device ID:
22b8:2e76
In this case, it's 22b8
. That's the identifier for Motorola.
You'll need to input this into your udev rules in order to get up and running:
Make sure that you replace 22b8
with the identifier you get in the above command.
Now check that your device is properly connecting to ADB, the Android Debug Bridge, by running adb devices
.
Seeing device
in the right column means the device is connected. You must have only one device connected at a time.
3. Run your app#
Type the following in your command prompt to install and launch your app on the device:
If you get a 'bridge configuration isn't available' error, see Using adb reverse.
Hint: You can also use the React Native CLI
to generate and run a Release
build (e.g. npx react-native run-android --variant=release
).
Connecting to the development server
You can also iterate quickly on a device by connecting to the development server running on your development machine. There are several ways of accomplishing this, depending on whether you have access to a USB cable or a Wi-Fi network.
Method 1: Using adb reverse (recommended)#
You can use this method if your device is running Android 5.0 (Lollipop) or newer, it has USB debugging enabled, and it is connected via USB to your development machine.
Run the following in a command prompt:
To find the device name, run the following adb command:
You can now enable Live reloading from the Developer menu. Your app will reload whenever your JavaScript code has changed.
Method 2: Connect via Wi-Fi#
You can also connect to the development server over Wi-Fi. You'll first need to install the app on your device using a USB cable, but once that has been done you can debug wirelessly by following these instructions. You'll need your development machine's current IP address before proceeding.
Open a terminal and type /sbin/ifconfig
to find your machine's IP address.
- Make sure your laptop and your phone are on the same Wi-Fi network.
- Open your React Native app on your device.
- You'll see a red screen with an error. This is OK. The following steps will fix that.
- Open the in-app Developer menu.
- Go to Dev Settings → Debug server host & port for device.
- Type in your machine's IP address and the port of the local dev server (e.g. 10.0.1.1:8081).
- Go back to the Developer menu and select Reload JS.
React Native Ios App
You can now enable Live reloading from the Developer menu. Your app will reload whenever your JavaScript code has changed.
Building your app for production#
Spotify Android React Native App Store
You have built a great app using React Native, and you are now itching to release it in the Play Store. The process is the same as any other native Android app, with some additional considerations to take into account. Follow the guide for generating a signed APK to learn more.