Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
REACT_NATIVE_EXPOで行うアプリの簡単最速運用_渡邊様_登壇資料_.pdf
Search
最新技術のエンジニア勉強会!シューマイ! ~Tech Lead Engineer~
February 27, 2019
Programming
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
REACT_NATIVE_EXPOで行うアプリの簡単最速運用_渡邊様_登壇資料_.pdf
最新技術のエンジニア勉強会!シューマイ! ~Tech Lead Engineer~
February 27, 2019
More Decks by 最新技術のエンジニア勉強会!シューマイ! ~Tech Lead Engineer~
See All by 最新技術のエンジニア勉強会!シューマイ! ~Tech Lead Engineer~
Rails_and_spice
shuuumai
2
430
_何となく_世界からオファーが来る_エンジニアのなり方LT.pdf
shuuumai
1
510
シェアリングサービスのトランザクションを支えるGo
shuuumai
0
250
循環的複雑度80超えの現行システムに Laravel × オニオンアーキテクチャ で立ち向かった話(栗原 史明 氏*株式会社うるる)
shuuumai
1
2.4k
シューマイ_Tech_Lead_Engineerから最新技術を学べ_Rails編_登壇資料.pdf
shuuumai
0
480
シューマツワーカー サービス資料
shuuumai
0
600
POL流レバレッジの効いたエンジニア組織を作る
shuuumai
1
490
Other Decks in Programming
See All in Programming
act1-costs.pdf
sumedhbala
0
110
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
280
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
1
280
Lessons from Spec-Driven Development
simas
PRO
0
220
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.4k
Snowflake Summitでの新機能 CoCo / CoWork / snowflake-summit-2026-overall-what-new-coco
tatsuhiro
1
180
AIを活用したE2Eテスト実装効率化のあゆみ / ebisu-mobile-14-kotetu
kotetuco
0
130
Performance Engineering for Everyone
elenatanasoiu
0
220
Language Server 使ってる? 〜VSCode と Zed の場合〜 / Are you using a Language Server? ~For VS Code and Zed~
handlename
0
800
JavaDoc 再入門
nagise
1
420
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
360
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
220
Featured
See All Featured
The Language of Interfaces
destraynor
162
27k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
The World Runs on Bad Software
bkeepers
PRO
72
12k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
300
Marketing to machines
jonoalderson
1
5.5k
We Have a Design System, Now What?
morganepeng
55
8.2k
Google's AI Overviews - The New Search
badams
0
1k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
How to Ace a Technical Interview
jacobian
281
24k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.4k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
370
Transcript
2019/02/27 ΘͨͳΏ͏ REACT NATIVE EXPOͰߦ͏ΞϓϦͷ؆୯࠷ӡ༻
▸ ࣗݾհ ▸ React Native Expoͱ ▸ ExpoΛ͏ϝϦοτ/σϝϦοτ ▸ ։ൃӡ༻Λૉૣ͘؆୯ʹߦ͏ͨΊʹ
▸ circleciͷಋೖ ▸ expo-qr-notifyͷಋೖ ▸ ·ͱΊ ֓ཁ
ࣗݾհ(1) ΘͨͳΏ͏ ▸ ॴଐ ▸ גࣜձࣾg&h ▸ Web / ΞϓϦΛझຯͰެ։
▸ ࣄ༰ ▸ αʔό / ϑϩϯτ / ΞϓϦ / Web ▸ ΞΧϯτ ▸ Twitter : @hmktsu ▸ Github : @watanabeyu ࣮ફExpo͍ͬͯ͏ຊΛڞஶͰ201812݄ʹग़൛
ࣗݾհ(2) ▸ https://www.gandh.jp ▸ 3໊(ΤϯδχΞࣗҰਓ)Ͱฏۉྸ30ͷγχΞձࣾ ▸ ετϦʔτΧϧνϟʔ × ITͳαʔϏεΛӡӦ ▸
ݱࡏͷϝΠϯࣄۀɿhttps://www.weddyweddy.net ▸ μϯαʔ͚ͷϓϥοτϑΥʔϜܥSNSΞϓϦ ▸ ͪ͜ΒͰνϣΠεͨ͠གྷΓ͍͢30ඵఔͷۂͰགྷͬͯಈըΛΞοϓ
REACT NATIVE EXPOͰߦ͏ΞϓϦͷ؆୯࠷ӡ༻ React Native Expoͱ
REACT NATIVE EXPOͱ(1) ▸ React NativeΛݶΓͳ͘web։ൃʹ͚ۙͮΔͨΊͷͷ ▸ XcodeAndroid Studio͕ෆཁ ▸
JavaScriptͷΈͰ࡞Δ͜ͱ͕Մೳ
REACT NATIVE EXPOͱ(2) ▸ σόοάʹExpo Clientͱ͍͏ΞϓϦΛ֤ετΞ͔Βμϯϩʔυ ▸ ಉҰωοτϫʔΫ / ಉҰϩάΠϯΞΧϯτͰ࣮ߦՄೳ
▸ ΄ͱΜͲͷͰγʔϜϨεʹσόοΫՄೳ
REACT NATIVE EXPOͱ(3) ▸ Expo SnackͰWebϒϥβ্Ͱࢼ͢͜ͱ͕Մೳ ▸ ExpoΞΧϯτʹಉظͰ͖Δ ▸ γϛϡϨʔλଐͯ͠ΔͷͰϒϥβͷΈͰ։ൃ͕Մೳ
REACT NATIVE EXPOͱ(4) ▸ ओཁͳػೳʹରԠ ▸ Χϝϥ ▸ ԻಈըΛ࠶ੜը(Ի)ͨ͠ΓɺϝσΟΞϥΠϒϥϦͷΞΫηε ▸
֤छηϯαʔܥ ▸ ͳͲͳͲ ΄΅΄΅ͷΞϓϦ։ൃʹඞཁͳػೳʹରԠ
REACT NATIVE EXPOͱ(5) ▸ CodePushͷΑ͏ͳOTAΞοϓσʔτʹඪ४ରԠ ▸ configڥ͝ͱʹ؆୯ʹઃఆՄೳ ▸ app.jsonrelease-channelΛϏϧυຖʹมߋՄೳ ▸
ΞϓϦΛϏϧυ͢Δࡍͷূ໌ॻؔ࿈ΛExpoͰཧͯ͘͠ΕΔ EXPO.HOST —config app.development.json release-channel=development -config app.production.json —release-channel=production ɾiOS Distribution ɾAPNs iOS ɾiOS Development ɾAndroid KeyStore
REACT NATIVE EXPOͰߦ͏ΞϓϦͷ؆୯࠷ӡ༻ ExpoΛ͏ϝϦοτ/σϝϦοτ
EXPOΛ͏ϝϦοτ/σϝϦοτ(1) ʙϝϦοτʙ ▸ JSͷΈͳͷͰWebग़ͷΤϯδχΞ͕৮Γ͍͢ ▸ ͍͍ͪͪϏϧυ͢Δඞཁ͕ͳ͍ͷͰσόοά͕؆୯ ▸ ExpoଆͰίϯϙʔωϯτΛ։ൃͯ͘͠ΕͯΔͷͰϝϯςφϯε͕ෆඞཁ ▸ ΄΅΄΅ͷωΠςΟϒػೳʹରԠͯ͠Δ
▸ ίϯϑΟάͳͲϏϧυ͢ΔࡍʹjsonϑΝΠϧΛࢦఆ͢Δ͚ͩ ▸ OTAΞοϓσʔτରԠͳͷͰਃෆཁͰߋ৽Մೳ ▸ ূ໌ॻؔ࿈ͷཧΛߦͬͯ͘ΕΔ ▸ React NativeຊମͷΞοϓσʔτΛͯ͘͠ΕΔ
EXPOΛ͏ϝϦοτ/σϝϦοτ(2) ʙσϝϦοτʙ ▸ npmύοέʔδ͕JSͷΈͰॻ͔Ε͍ͯΔͷͰͳ͍ͱ͑ͳ͍ ▸ ExpoͰऔΓࠐΜͰ͍ΔSDKͰͳ͍ͱ͑ͳ͍ ▸ adjustReproͳͲ ▸ firebaseWeb
SDKͳͷͰϑϧػೳ͕͑ͳ͍ ▸ ExpoͰ༻ҙ͍ͯ͠ͳ͍ػೳ͕͑ͳ͍ ▸ BluetoothͳͲ ▸ Expoͷશͯͷίϯϙʔωϯτ͕όϯυϧʹؚ·Εͯ͠·͏ ▸ ৹ࠪ࣌ͷࠂؔ࿈ͷνΣοΫ ▸ ϑΝΠϧͷංେԽ ▸ ͍͟σλον͢ΔͱͳΔͱ͔ͳΓࠊ͕ॏ͘ͳͬͯ͠·͏ ▸ React NativeຊମͷΞοϓσʔτ͕͘ͳͬͯ͠·͏
EXPOΛ͏ϝϦοτ/σϝϦοτ(3) ʙEXPOͷ͍ॴʙ ▸ ExpoͰ༻ҙ͞Ε͍ͯΔͷͷΈͰ݁Ͱ͖Δ ▸ ࠂͳͲϏδωεతͳཁ݅ͷҙࢥܾఆ͕Ͱ͖Δ͔Ͳ͏͔ ▸ εϐʔυΛ༏ઌͯ͠ϓϩτλΠϐϯάఔͷؾ࣋ͪΛ࣋ͭ ▸ ͨͬͨΒνʔϜਓ૿ͯ͠ωΠςΟϒΛ࡞ΔΑ͏ʹ͢Δ
ҰਓͰ։ൃ͢Δ͙Β͍ͷؾ࣋ͪͩͱΑ͍͔
REACT NATIVE EXPOͰߦ͏ΞϓϦͷ؆୯࠷ӡ༻ ։ൃӡ༻Λૉૣ͘؆୯ʹߦ͏ͨΊʹ
REACT NATIVE EXPOͰߦ͏ΞϓϦͷ؆୯࠷ӡ༻ ࣮ػ֬ೝͷखؒΛ͔͚ͳ͍Α͏ʹ͍ͨ͠ OTAΞοϓσʔτΛޮΑ͍͍ͨ͘
REACT NATIVE EXPOͰߦ͏ΞϓϦͷ؆୯࠷ӡ༻ circleciͷಋೖ
CIRCLECIͷಋೖ(1) git push git merge dev prod develop master expo
publish expo publish ֤branchʹϚʔδ͞ΕͨΒ OTAΞοϓσʔτ͞ΕΔ
CIRCLECIͷಋೖ(2) https://gist.github.com/watanabeyu/69c42b79800baa8691ac0447866a2252 ExpoͷΞΧϯτ໊/ύεϫʔυCI্ʹอଘ
CIRCLECIͷಋೖ(3) https://gist.github.com/watanabeyu/69c42b79800baa8691ac0447866a2252 release-channel͓ΑͼconfigΛࢦఆ
CIRCLECIͷಋೖ(4) https://gist.github.com/watanabeyu/69c42b79800baa8691ac0447866a2252
CIRCLECIͷಋೖ(5) ͏গ͠ศརʹͳΒͳ͍͔ʁ PRຖʹExpoΫϥΠΞϯτͰΞϓϦͷ֬ೝ͕Ͱ͖Δͱศར
REACT NATIVE EXPOͰߦ͏ΞϓϦͷ؆୯࠷ӡ༻ expo-qr-notifyͷಋೖ
EXPO-QR-NOTIFYͷಋೖ(1) git push git merge dev prod dev prod expo
publish expo publish publish࣌ʹ slackͱgithubʹ ௨ͯ͠΄͍͠ feature/xxx git merge
EXPO-QR-NOTIFYͷಋೖ(2) expo publish࣌ʹίϚϯυ࣮ߦͰ͖ΔͷΛར༻ͨ͠ύοέʔδ https://github.com/watanabeyu/expo-qr-notify/tree/master/example
EXPO-QR-NOTIFYͷಋೖ(3)
EXPO-QR-NOTIFYͷಋೖ(4)
EXPO-QR-NOTIFYͷಋೖ(5) release-channelΛcircleciͷڥมͰࢦఆ
EXPO-QR-NOTIFYͷಋೖ(6)
·ͱΊ ▸ Expo։ൃ͢Δ্ͰϝϦοτ͕ଟ͍͠σϝϦοτଟ͍ ▸ ཁ݅ʹͯ·Δͱͱͯ؆୯ ▸ ϓϩτλΠϐϯάతͳײ͙֮Β͍ͷํ͕Α͍ ▸ ։ൃ͓Αͼӡ༻Λগ͠Ͱૉૣ͘؆୯ʹ͢ΔͨΊʹ ▸
circleciΛಋೖ͢ΔͱϒϥϯνຖʹOTAΞοϓσʔτͰ͖Δ ▸ expo-qr-notifyΛಋೖ͢Δ͜ͱͰ։ൃ࣌ʹPRຖʹ֬ೝͰ͖Δ
͓ΘΓ