C:\> explorer https://nodejs.org/en/download/
C:\> npm -v (6.14.5)
C:\> explorer https://classic.yarnpkg.com/en/docs/install/#windows-stable
C:\> yarn -v (1.22.4)
C:\> npm install -g expo-cli
C:\> expo -V (3.28.0)
C:\> expo whoami
Logged in as thaiall
C:\> npm install -g react-native-cli
C:\> react-native -v (react-native-cli: 2.0.1 react-native: 0.63.3)
C:\> create-react-native-app helloweb (รอคอย 12 นาที)
> Default new app
C:\helloweb> cd helloweb
C:\helloweb> notepad app.js
import { StatusBar } from 'expo-status-bar';
import React from 'react';
import { StyleSheet, Text, View } from 'react-native';
export default function App() {
return (
<View style={styles.container}>
<Text>hello world
{/* Open up App.js to start working on your app! */}
</Text>
<StatusBar style="auto" />
</View>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
alignItems: 'center',
justifyContent: 'center',
},}
);
---
C:\helloweb> notepad app.json
{
"name": "helloweb",
"displayName": "helloweb",
"expo": {
"name": "helloweb",
"slug": "helloweb",
"version": "1.0.0",
"assetBundlePatterns": [
"**/*"
]
}
}
---
C:\helloweb> yarn web หรือ npm run web (รอ Starting Metro Bundler. และแสดงผลใน browser อย่างถูกต้อง)
---
Mobile : ใช้ expo app สแกน qr code พบคำว่า hello world บน smart phone
---
C:\> create-react-native-app mygitfriends
> Default new app (รอคอย 12 นาที)
C:\> cd mygitfrinds
C:\mygitfrinds> npm run web หรือ yarn web (รอประมวล webpack 3 นาที)
1. พบการแสดงผลใน Browser - localhost:19006
2. เปิด expo app สั่ง scan qr code เปิดบน smartphone ได้เลย
---
ปรับ code
สร้าง folder ชื่อ assets มี 2 แฟ้มในห้องนี้ คือ icon.png และ splash.png
---
C:\mygitfrinds> notepad app.json
{
"expo": {
"name": "My git friends",
"slug": "mygitfriends",
"privacy": "public",
"sdkVersion": "39.0.0",
"platforms": ["android","ios"],
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {"fallbackToCacheTimeout": 0},
"assetBundlePatterns": ["**/*"],
"android": {
"package": "com.thaiall.mygitfriends"
}
}
}
---
C:\mygitfrinds> notepad app.js
import React, { Component } from 'react';
import { WebView } from 'react-native-webview';
export default class App extends Component {
render() {
return (
<WebView
source={{uri:'https://thaiall.github.io/mygitfriends/adminlte_mygitfriends.htm'}}
style={{marginTop: 20}}
/>
);
}
}
---
C:\mygitfrinds> yarn web หรือ npm run web
---
ไม่พบ webview
Module not found: Can't resolve 'react-native-webview' in 'C:\Users\LAB\mygitfriends'
// npm install --save react-native-webview (มีปัญหากับรุ่น 10.9.2)
C:\mygitfrinds> npm install --save react-native-webview@10.7.0 (รอคอย 5 นาที)
C:\mygitfrinds> npm audit fix (พบว่าไม่ผ่าน ต้องสั่ง npm install แก้ปัญหา Missing: expo-splash-screen@~0.6.2)
C:\mygitfrinds> npm install (เพื่อติดตั้ง package เพิ่ม)
C:\mygitfrinds> npm audit fix (ซ่อม เท่าที่ซ่อมได้ แต่ไม่ทั้งหมด ต้องปล่อยไป)
C:\mygitfrinds> npm run web
---
Mobile : ใช้ expo app สแกน qr code พบคำว่า hello world บน smart phone
---
C:\mygitfrinds> expo build:android
> ? Would you like to proceed? (Y/n)
> apk
> Generate new keystore (รอคอย 3 นาที)
---
C:\mygitfrinds> expo build:ios
> ? Would you like to proceed? (Y/n)
> ? What would you like your iOS bundle identifier to be? (com.thaiall.mygitfriends)
> ? Choose the build type you would like: » - Use arrow-keys. Return to submit.
- archive - Deploy the build to the store (Apple ID required)
- * simulator - Run the build on simulator (Build)
/*
Successfully built standalone app: https://expo.io/artifacts/6ba79fc2-3ab3-4d0d-b185-e86b5aea4af3
mygitfriends-5c4dafb5-280c-45bb-844f-90997f4e62ee-simulator.tar.gz (50 MB)
จบ process เท่านี้
*/
> ? Do you have access to the Apple account that will be used for submitting this app to the App Store? (Y/n)
- No
> ? Will you provide your own Apple Distribution Certificate? » - Use arrow-keys. Return to submit.
- Let Expo handle the process
- I want to upload my own file
> อ่านเพิ่มที่ https://bit.ly/2VtGWhU หรือ https://www.icloud.com/ หรือ https://appleid.apple.com/account#!&page=create
> ? Apple ID
> ? Password
Authenticating to Apple Developer Portal...
Authentication with Apple Developer Portal failed!
Failed to set up Distribution Certificate
ไม่ได้ไปต่อตรงนี้
---
C:\mygitfrinds> notepad app.json
พบการปรับปรุงอัตโนมัติใน app.json กรณีสั่ง build:ios แบบ archive ที่ต้องใช้ Apple ID
{
"expo": {
"name": "My git friends",
"slug": "mygitfriends",
"privacy": "public",
"sdkVersion": "39.0.0",
"platforms": [
"android",
"ios"
],
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/icon.png",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
],
"android": {
"package": "com.thaiall.mygitfriends"
},
"ios": {
"bundleIdentifier": "com.thaiall.mygitfriends"
}
}
}