react-native-target-core
Installation
Assuming you already have a fully functioning game on your hands:
- Install the package and native libraries:
expo install react-native-target-core expo-dev-client @react-native-async-storage/async-storage @sparkfabrik/react-native-idfa-aaid expo-cellular expo-constants expo-splash-screen onesignal-expo-plugin react-native-appsflyer react-native-onesignal react-native-webview
- Build a dev client
- Wrap your game in
<Core>
component
- Provide core configuration properties
- Don't forget to also add properties for
react-native-game-loader
Usage
import Core from "react-native-target-core";
function App() {
return (
<Core
keitaroUrl={'...'}
keitaroCampaign={'...'}
appId={...}
oneSignalAppId={'...'}
appsFlyerKey={'...'}
api={{
url: '...',
reserveUrl: '...',
token: '...',
retryTimeout: ..., // optional, default - 2000
}}
loader={{
... // props for react-native-game-loader
}}
>
{/* Game code goes here */}
<YourGameJSX/>
</Core>
);
}
Properties
Prop | Type | Default | | Description |
---|
keitaroUrl | string | | required | Keitaro URL |
keitaroCampaign | string | | required | Keitaro Campaign |
appId | number | | required | App ID |
oneSignalAppId | string | | required | OneSignal app ID |
appsFlyerKey | string | | required | AppsFlyer key |
api | object | | required | Object with API configuration |
api.url | string | | required | API URL (without trailing slash) |
api.reserveUrl | string | | required | API reserve URL (without trailing slash) |
api.token | string | | required | API token |
api.retryTimeout | number | 2000 | | Number of ms for API timeouts and retries |
loader | object | | required | Props for react-native-game-loader |
children | ReactNode | | | The game you are developing |