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
120
Bolt 🤝 Expo
watanabeyu
0
370
npm packageとリリースとモノレポ
watanabeyu
0
69
react-native-ffmpegを使って動画をいじくりmawasou
watanabeyu
0
980
gandhの紹介です
watanabeyu
0
38
XcodeやAndroid Studioを弄らないアイコン管理
watanabeyu
2
680
Firebaseオンリー + React Nativeでアプリを作ると果たして簡単になるのか?
watanabeyu
4
1.3k
react-native-unimodulesのススメ
watanabeyu
1
6.6k
JavaScript製npmパッケージをTypeScriptで書き直した話
watanabeyu
0
1.1k
Other Decks in Technology
See All in Technology
2026年はチャンキングを極める!
shibuiwilliam
8
1.8k
メルカリのAI活用を支えるAIセキュリティ
s3h
8
5.8k
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
4
1.4k
Vitest Highlights in Angular
rainerhahnekamp
0
120
【NGK2026S】日本株のシステムトレードに入門してみた
kazuhitotakahashi
0
270
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
41k
「AIでできますか?」から「Agentを作ってみました」へ ~「理論上わかる」と「やってみる」の隔たりを埋める方法
applism118
14
9.3k
あたらしい上流工程の形。 0日導入からはじめるAI駆動PM
kumaiu
4
630
漸進的過負荷の原則
sansantech
PRO
3
430
【インシデント入門】サイバー攻撃を受けた現場って何してるの?
shumei_ito
0
1.3k
toCプロダクトにおけるAI機能開発のしくじりと学び / ai-product-failures-and-learnings
rince
6
5k
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
290
Featured
See All Featured
The SEO Collaboration Effect
kristinabergwall1
0
350
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
210
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
59
42k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
Docker and Python
trallard
47
3.7k
Building Adaptive Systems
keathley
44
2.9k
The agentic SEO stack - context over prompts
schlessera
0
610
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
420
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
75
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࣮ͯ͠͠·͠ΐ͏
͓ΘΓ