forked from hyochan/react-native-iap
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor: migrate exmaple project to rn@0.72+ (hyochan#2633)
## Why The current example project is somewhat outdated, making it challenging for users to operate with the new SDK. They are required to use an older iOS simulator and manage various legacy issues. ## How Update the RN project to the latest version, `0.72.7`. ## Test Plan <img src="https://github.com/dooboolab-community/react-native-iap/assets/27461460/8df160e6-8e71-433c-ad6d-1e3d96851a1f" width="320"/> Run example projects in `iOS` and `Android`. ## Caveat I'm trying to understand why react-native.config.js isn't effectively embedding the local react-native-iap source code into the project. As of now, I've manually installed react-native-iap in the package.json 🤔. Reference: https://github.com/react-native-community/cli/blob/main/docs/dependencies.md
- Loading branch information
Showing
67 changed files
with
7,937 additions
and
11,651 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
module.exports = { | ||
root: true, | ||
extends: '@react-native', | ||
}; |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
module.exports = { | ||
arrowParens: 'avoid', | ||
bracketSameLine: true, | ||
bracketSpacing: false, | ||
singleQuote: true, | ||
trailingComma: 'all', | ||
}; |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
{} | ||
{} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
source 'https://rubygems.org' | ||
|
||
# You may use http://rbenv.org/ or https://rvm.io/ to install and use this version | ||
ruby '3.2.1' | ||
ruby ">= 2.6.10" | ||
|
||
gem 'cocoapods', '~> 1.11', '>= 1.11.2' | ||
gem 'cocoapods', '~> 1.13' | ||
gem 'activesupport', '>= 6.1.7.3', '< 7.1.0' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,61 +1,79 @@ | ||
# Example app | ||
This is a new [**React Native**](https://reactnative.dev) project, bootstrapped using [`@react-native-community/cli`](https://github.com/react-native-community/cli). | ||
|
||
⚠️warn: iOS example currently not working, needs to be updated (ruby, pods, etc) | ||
# Getting Started | ||
|
||
## Installation | ||
>**Note**: Make sure you have completed the [React Native - Environment Setup](https://reactnative.dev/docs/environment-setup) instructions till "Creating a new application" step, before proceeding. | ||
```sh | ||
yarn | ||
``` | ||
## Step 1: Start the Metro Server | ||
|
||
First, you will need to start **Metro**, the JavaScript _bundler_ that ships _with_ React Native. | ||
|
||
To start Metro, run the following command from the _root_ of your React Native project: | ||
|
||
For iOS, do the following: | ||
```bash | ||
# using npm | ||
npm start | ||
|
||
```sh | ||
yarn pods | ||
# OR using Yarn | ||
yarn start | ||
``` | ||
|
||
## Running | ||
## Step 2: Start your Application | ||
|
||
First start the metro server: | ||
Let Metro Bundler run in its _own_ terminal. Open a _new_ terminal from the _root_ of your React Native project. Run the following command to start your _Android_ or _iOS_ app: | ||
|
||
```sh | ||
yarn start | ||
### For Android | ||
|
||
```bash | ||
# using npm | ||
npm run android | ||
|
||
# OR using Yarn | ||
yarn android | ||
``` | ||
|
||
You can then either build for iOS: | ||
### For iOS | ||
|
||
```bash | ||
# using npm | ||
npm run ios | ||
|
||
```sh | ||
# OR using Yarn | ||
yarn ios | ||
``` | ||
|
||
or for Android with 2 variants: `play` or `amazon`. | ||
If everything is set up _correctly_, you should see your new app running in your _Android Emulator_ or _iOS Simulator_ shortly provided you have set up your emulator/simulator correctly. | ||
|
||
```sh | ||
yarn android:play | ||
yarn android:amazon | ||
``` | ||
This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively. | ||
|
||
## Step 3: Modifying your App | ||
|
||
Now that you have successfully run the app, let's modify it. | ||
|
||
1. Open `App.tsx` in your text editor of choice and edit some lines. | ||
2. For **Android**: Press the <kbd>R</kbd> key twice or select **"Reload"** from the **Developer Menu** (<kbd>Ctrl</kbd> + <kbd>M</kbd> (on Window and Linux) or <kbd>Cmd ⌘</kbd> + <kbd>M</kbd> (on macOS)) to see your changes! | ||
|
||
For **iOS**: Hit <kbd>Cmd ⌘</kbd> + <kbd>R</kbd> in your iOS Simulator to reload the app and see your changes! | ||
|
||
## Congratulations! :tada: | ||
|
||
You've successfully run and modified your React Native App. :partying_face: | ||
|
||
### Now what? | ||
|
||
- If you want to add this new React Native code to an existing application, check out the [Integration guide](https://reactnative.dev/docs/integration-with-existing-apps). | ||
- If you're curious to learn more about React Native, check out the [Introduction to React Native](https://reactnative.dev/docs/getting-started). | ||
|
||
# Troubleshooting | ||
|
||
If you can't get this to work, see the [Troubleshooting](https://reactnative.dev/docs/troubleshooting) page. | ||
|
||
# Learn More | ||
|
||
To learn more about React Native, take a look at the following resources: | ||
|
||
To be able to get products/subscriptions from the App Store or Play Store you will need to follow a few steps: | ||
|
||
### Go to [developer.apple.com](https://developer.apple.com) | ||
|
||
1. Open "Certificates, Identifiers & Profiles" > "Identifiers" | ||
2. Click the "Plus" button | ||
3. Select "App IDs", continue, select "App" | ||
4. Complete the form and submit: | ||
- Description: React Native IAP Example | ||
- Bundle ID (explicit): org.reactjs.native.example.IapExample | ||
5. Click "Register" | ||
|
||
### Go to [appstoreconnect.apple.com](https://appstoreconnect.apple.com/) | ||
|
||
6. Create a new app: | ||
- Platforms: iOS | ||
- Name: React Native IAP Example <SOME_STRING> | ||
- Sku: reactnativeiapexample | ||
7. Go to "In-App Purchases", click "Create" | ||
8. Select "Consumable" and submit: | ||
- Reference Name: com.cooni.point1000 | ||
- Product ID: com.cooni.point1000 (can be the value defined in utils/constants.ts) | ||
9. Go back to the app, login with your account when the AppStore shows you the prompt | ||
10. Voilà! | ||
- [React Native Website](https://reactnative.dev) - learn more about React Native. | ||
- [Getting Started](https://reactnative.dev/docs/environment-setup) - an **overview** of React Native and how setup your environment. | ||
- [Learn the Basics](https://reactnative.dev/docs/getting-started) - a **guided tour** of the React Native **basics**. | ||
- [Blog](https://reactnative.dev/blog) - read the latest official React Native **Blog** posts. | ||
- [`@facebook/react-native`](https://github.com/facebook/react-native) - the Open Source; GitHub **repository** for React Native. |
Oops, something went wrong.