# React Native Intro ## 1. Api token - rails gem: doorkeeper (https://github.com/doorkeeper-gem/doorkeeper) - access token - refresh token - retryable - identify non login user (devise ID) ## 2. Notification - firebase - ISO cert ## 3. App version update - category like tool app OR not? - force update - hot update - backend API version (maintan previous?) ## 4. Deep link (Universal link) - in app browser support? - not easy to handle every conditon - ~~has exist SaaS service~~ ## 5. Develop (javascript) > O:Learn once write anywhere > X:Write once, run anywhere - should read `react doc` + `react native doc` - asynchronous flow (localstorage、devise info、request api、promise, **best practice: redux-saga**) - css line-style (flex base、**best practice: styled component**) - screen routing not like web, like screen stack (handle gesture problem) - Xcode is required (means need MAC) - Code Signing (IOS develop team、pricing) - handle multiple devise, not virtaul machine(iphone X, screen size, os version, camera, GPS, ...etc) - handle library bugs (source code) - handle user condition(network lose、network speed、trick、time locale) - keep code quality - weak support for animate、game - React Native Debugger、Redux Devtools - Using Graph QL? - Apollo Data Fetcher - Apollo Devtools - design data schema https://developer.apple.com/ ## 6. Test - React Component unit test - React Story Book - Rollbar error tracking ## 7. Release - Fastlane (https://fastlane.tools/, write by ruby) - Code Signing problem (IOS develop team) - must be macOS system to build the IOS app - release to TestFlight (like staging enviroment) - Production - english document - provide testing account - 2 weeks - pricing https://developer.apple.com/testflight/ > analytics: https://medium.com/swlh/top-11-mobile-app-analytics-platforms-pricing-included-cdc553578fd