Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
110
Bolt 🤝 Expo
watanabeyu
0
360
npm packageとリリースとモノレポ
watanabeyu
0
67
react-native-ffmpegを使って動画をいじくりmawasou
watanabeyu
0
970
gandhの紹介です
watanabeyu
0
38
XcodeやAndroid Studioを弄らないアイコン管理
watanabeyu
2
670
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
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
2
210
LayerX QA Night#1
koyaman2
0
150
Strands Agents × インタリーブ思考 で変わるAIエージェント設計 / Strands Agents x Interleaved Thinking AI Agents
takanorig
4
1.7k
100以上の新規コネクタ提供を可能にしたアーキテクチャ
ooyukioo
0
220
Amazon Bedrock Knowledge Bases × メタデータ活用で実現する検証可能な RAG 設計
tomoaki25
6
2k
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
360
AIBuildersDay_track_A_iidaxs
iidaxs
4
940
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
310
M&Aで拡大し続けるGENDAのデータ活用を促すためのDatabricks権限管理 / AEON TECH HUB #22
genda
0
190
AWSインフルエンサーへの道 / load of AWS Influencer
whisaiyo
0
190
AI駆動開発の実践とその未来
eltociear
1
460
事業の財務責任に向き合うリクルートデータプラットフォームのFinOps
recruitengineers
PRO
2
160
Featured
See All Featured
Practical Orchestrator
shlominoach
190
11k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Crafting Experiences
bethany
0
21
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
85
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
110
Between Models and Reality
mayunak
0
150
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࣮ͯ͠͠·͠ΐ͏
͓ΘΓ