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-unimodulesを用いてのApp内課金実装
Search
Yu Watanabe
March 04, 2021
Technology
0
1.2k
react-native-unimodulesを用いてのApp内課金実装
react-native-unimodulesを用いてのApp内課金実装についてです
Yu Watanabe
March 04, 2021
Tweet
Share
More Decks by Yu Watanabe
See All by Yu Watanabe
依存ライブラリを薄くするために車輪を再開発してもいいんだよ🛞
watanabeyu
0
130
Bolt 🤝 Expo
watanabeyu
0
380
npm packageとリリースとモノレポ
watanabeyu
0
69
react-native-ffmpegを使って動画をいじくりmawasou
watanabeyu
0
990
gandhの紹介です
watanabeyu
0
41
XcodeやAndroid Studioを弄らないアイコン管理
watanabeyu
2
680
Firebaseオンリー + React Nativeでアプリを作ると果たして簡単になるのか?
watanabeyu
4
1.3k
react-native-unimodulesのススメ
watanabeyu
1
6.7k
JavaScript製npmパッケージをTypeScriptで書き直した話
watanabeyu
0
1.1k
Other Decks in Technology
See All in Technology
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
2
1.1k
「データの価値を、みんなの武器に。」Data Enablementの価値とツラみ
ryoskdara_
1
120
AIが実装する時代、人間は仕様と検証を設計する
gotalab555
7
1.1k
欲しいを叶える個人開発の進め方 / How to Run an Indie Project That Brings Your Ideas to Life
endohizumi
0
140
Getting started with Google Antigravity
meteatamel
0
270
衛星画像即時マッピングサービスの実現に向けて
lehupa
1
280
GoとWasmでつくる軽量ブラウザUI
keyl0ve
0
110
Claude Codeで実践するスペック駆動開発入門 / sdd-with-claude_code
yoshidashingo
2
3.2k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
94k
AIで 浮いた時間で 何をする? 2026春 #devsumi
konifar
15
2.3k
チーム開発の基礎_研究を事業につなげるために
cyberagentdevelopers
PRO
8
3.9k
GitHub Copilot CLI を使いやすくしよう
tsubakimoto_s
0
190
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
230
Thoughts on Productivity
jonyablonski
75
5.1k
Scaling GitHub
holman
464
140k
Amusing Abliteration
ianozsvald
0
110
sira's awesome portfolio website redesign presentation
elsirapls
0
160
What does AI have to do with Human Rights?
axbom
PRO
0
2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
200
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
620
The World Runs on Bad Software
bkeepers
PRO
72
12k
Tell your own story through comics
letsgokoyo
1
820
Transcript
2021/03/04 ΘͨͳΏ͏ REACT-NATIVE-UNIMODULESΛ༻͍ͯͷ APP՝࣮ۚ
▸ ExpoΛ͍ͬͯΔ ▸ APP՝ۚ(αϒεΫ)Λ࣮͠ͳ͍ͱ͍͚ͳ͍ਓ ຊεϥΠυͷλʔήοτ
▸ ࣗݾհ ▸ APP՝ۚʹ͍ͭͯ ▸ expo-in-app-purchaseΛ༻͍ͯAPP՝ۚΛ࣮͢Δ ▸ ՝ۚεςʔλεͷ֬ೝʹ͍ͭͯ ▸ ΞϓϦΛ։͍ͨͱ͖ͳͲखಈͰ֬ೝΛ͢Δ
▸ webhookΛ༻͍ͯϢʔβଆͰεςʔλεมߋͨ͠ࡍʹ֬ೝ͢Δ ▸ ·ͱΊ ࣍
ࣗݾհ(1) ΘͨͳΏ͏ ▸ ॴଐ ▸ גࣜձࣾg&h CTO ▸ Web /
ΞϓϦΛझຯͰެ։ ▸ ࣄ༰ ▸ αʔό / ϑϩϯτ / ΞϓϦ / Web / શ෦ ▸ ΞΧϯτ ▸ Twitter : @hmktsu ▸ Github : @watanabeyu
ࣗݾհ(2) ▸ https://www.gandh.jp ▸ 6໊(ΤϯδχΞ1ਓ) ▸ ετϦʔτΧϧνϟʔ × ITͳμϯεαʔϏεΛӡӦ ▸
https://dancewith.jp ▸ ετϦʔτμϯεͷΦϯϥΠϯϨοεϯΞϓϦ ▸ react-native + firebase + TypeScript + bitrise + NextJS ▸ prisma + GraphQL + Electron + ffmpeg ▸ TypeScriptͰ౷Ұͯ͠ۀޮԽ ▸ εχʔΧʔؔͷΞϓϦͷཪଆͰճͯ͠ΔγεςϜ ▸ TypeScript + Node + puppeteer + firebaseͰ࡞ ▸ ΞϓϦҰ෦ػೳΛผΞϓϦͱͯ͠react-nativeͰ࡞த
ຊͷςʔϚ react-native-unimodules(bare workflow)Λ༻͍ͯͷ APP՝࣮ۚ
REACT-NATIVE-UNIMODULES(BARE WORKFLOW)Λ༻͍ͯͷAPP՝࣮ۚ APP՝ۚʹ͍ͭͯ
APP՝ۚʹ͍ͭͯ(1) ʙDANCE WITHʹ͓͚Δ࣮ʙ ▸ ੍ֹ݄ͷαϒεΫ(୯ൃ՝࣮͓ۚͯ͠Βͣ) ▸ DANCE WITH࠷ॳiOS/AndroidͱʹStripeʹ࣮ͯ ▸ 20208݄ʙ11݄·ͰOK͕ͩͬͨ12݄͔ΒϦδΣΫτ
ߋ৽Ͱ͖ͳ͘ͳΔͷࠔΔͷͰ ͜ΕΛػʹApp՝ۚʹมߋ ͪͳΈʹStripeͷ࣮࣌1ൃͷ৹ࠪͰམͱ͞Ε͚ͨͲ ಈըετϦʔϛϯάͰແྉίϯςϯπे͋Δ͔Β ͬͯ͜ͱͰ৹ࠪ௨͚ͬͨͲɺ12݄͔ΒͦΕͰԡ͠௨ͤͣ…
APP՝ۚʹ͍ͭͯ(2) ʙREACT NATIVEʹ͓͚Δ࣮ʙ https://github.com/dooboolab/react-native-iap https://docs.expo.io/versions/latest/sdk/in-app-purchases/ DANCE WITHͰ Bare WorkflowΛಋೖ͍ͯͨ͠ͷͰ expo-in-app-purchaseͰ࣮
APP՝ۚʹ͍ͭͯ(3) ʙEXPO(MANAGED WORKFLOW)Ͱͷ࣮ʙ ▸ StripeͰαϒεΫ࣮Λͯ͠ޙ͔Β৹ࠪͰམͱ͞ΕΔՄೳੑ͕͋Δ ▸ NetflixΈ͍ͨʹձһొͳͲશͯWebͰΔʹDXͱ͔࣮ίετ͕ʹͳΔ ▸ react-native-iapexpo-in-app-purchaseExpoͰ༻Ͱ͖ͣ(ཁeject) ▸
ExpoΛeject͢ΔͱࣗಈͰBare WorkflowͱͳΔͷͰexpo-in-app-purchaseʹ͢Δͷ͕Α͍ ▸ ※ͪͳΈʹ྆ऀͱNative෦Λ͍͡Δ͜ͱͳ͍ͷͰ࣮ࡍͲͪΒͰߏΘͳ͍ EjectΛ࣮ͯ͢͠Δඞཁ͕͋Δ
REACT-NATIVE-UNIMODULES(BARE WORKFLOW)Λ༻͍ͯͷAPP՝࣮ۚ expo-in-app-purchaseΛ༻͍ͯAPP՝ۚΛ࣮͢Δ
EXPO-IN-APP-PURCHASEΛ༻͍ͯAPP՝ۚΛ࣮͢Δ(1)
EXPO-IN-APP-PURCHASEΛ༻͍ͯAPP՝ۚΛ࣮͢Δ(2) ՝ۚϖʔδΛ։͍ͨͱ͖ͷॳظԽॲཧ
EXPO-IN-APP-PURCHASEΛ༻͍ͯAPP՝ۚΛ࣮͢Δ(3) ߪೖ͕ྃͨ͠ࡍͷॲཧ + อଘ͢Δσʔλ
EXPO-IN-APP-PURCHASEΛ༻͍ͯAPP՝ۚΛ࣮͢Δ(4) ՝ۚϞʔμϧΛग़ͨ͢Ίͷؔ
REACT-NATIVE-UNIMODULES(BARE WORKFLOW)Λ༻͍ͯͷAPP՝࣮ۚ ՝ۚεςʔλεͷ֬ೝ
՝ۚεςʔλεͷ֬ೝ(1) ʙΞϓϦʙ ▸ ΞϓϦ্ཱͪ͛࣌εςʔλε͕֬ೝͰ͖Δը໘ ▸ Homeը໘ͳͲແྉ/༗ྉͰग़͠Θ͚͕͞ΕΔը໘ͳͲ ▸ جຊతʹΞϓϦ্ཱ͚ͪ͛࣌ͩͰେৎ
՝ۚεςʔλεͷ֬ೝ(2) ʙΞϓϦ͔Β͍߹Θͤ͢Δίʔυʙ
՝ۚεςʔλεͷ֬ೝ(3) ʙWEBHOOKܦ༝Ͱͷεςʔλε֬ೝʙ ▸ ϢʔβଆͷαϒεΫղআϓϥϯมߋΛݕ ▸ ΞϓϦ֎ͷڍಈ͕มΘΔͳΒ࣮͢Δඞཁ͋Γ ▸ ϓογϡ௨͕ແྉ/༗ྉͰมΘΔ ▸ WebΞϓϦͷํʹөͤ͞Δඞཁ͕͋ΔͳͲ
▸ ΞϓϦͷڍಈ͕มΘΔ͙Β͍͔͠ͳ͍ͷͰ͋Εඞཁ ͳ͍
՝ۚεςʔλεͷ֬ೝ(4) ʙWEBHOOKͰΞοϓσʔτ͢Δίʔυʙ
REACT-NATIVE-UNIMODULES(BARE WORKFLOW)Λ༻͍ͯͷAPP՝࣮ۚ ·ͱΊ
·ͱΊ ▸ ExpoΛ͍ͬͯͯAPP՝ۚΛ͍ͨ͠ͳΒBare workflowʹ͢Δ ▸ StripeͰڐ͞ΕΔύλʔϯ͋Δ͚Ͳجຊతʹڐ͞Εͳ͍ͱࢥ͏͖ ▸ ՝ۚͷॲཧωΠςΟϒ͍͡Βͳ͍͠ҙ֎ͱ؆୯ ▸ αϒεΫͷ՝ۚεςʔλεΛ֬ೝ͢ΔͷҎԼͷ2ͭ
▸ ΞϓϦΛ։͍ͨͱ͖ɺϢʔβεςʔλεΛ֬ೝ͢ΔͳͲͳͲ ▸ webhookͰϢʔβଆͷαϒεΫղͳͲΛݕ αϒεΫΛ࡞Γ͍ͨͷͰ͋Εආ͚ͯ௨Εͳ͍ͷͰ ࢥ͍ͬͯeject࣮ͯ͠͠·͠ΐ͏
͓ΘΓ