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
Mater of Subscription
Search
FujiKinaga
October 01, 2018
Programming
0
63
Mater of Subscription
FujiKinaga
October 01, 2018
Tweet
Share
More Decks by FujiKinaga
See All by FujiKinaga
最新のCompose Multiplatform を使うとiOSとAndroidアプリはどれくらい作れるのか
fujikinaga
2
610
Androidのテストの理解を深めてみた
fujikinaga
0
55
開発案件の進み方
fujikinaga
0
87
深いい勉強会 vol.10
fujikinaga
0
80
深いい勉強会 vol.9
fujikinaga
0
100
Understanding Dagger2 Part1
fujikinaga
0
43
深いい勉強会
fujikinaga
2
69
深いい勉強会 The Navigation Component
fujikinaga
0
53
深いい勉強会
fujikinaga
0
66
Other Decks in Programming
See All in Programming
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
Ruby on cygwin 2025-02
fd0
0
150
How mixi2 Uses TiDB for SNS Scalability and Performance
kanmo
38
14k
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
0
190
Writing documentation can be fun with plugin system
okuramasafumi
0
120
Bedrock Agentsレスポンス解析によるAgentのOps
licux
3
850
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
2
310
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
0
220
ソフトウェアエンジニアの成長
masuda220
PRO
12
1.8k
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
170
Open source software: how to live long and go far
gaelvaroquaux
0
640
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
570
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
We Have a Design System, Now What?
morganepeng
51
7.4k
Designing for Performance
lara
604
68k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Scaling GitHub
holman
459
140k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
Transcript
Master of Subscription Fuji Kinaga
ఆظߪೖʹରԠͨ࣌͠ʹಘͨݟΛ
άάͬͯҊ֎ใ͕ͳ͍
՝ۚؔ࿈ͷ·ͱΊ͓͢͢Ί • CyberAgent https://ameblo.jp/principia-ca/ entry-12071725733.html • Cookpad https://techlife.cookpad.com/entry/ 2018/03/14/090000 •
Excite https://blog.excite.co.jp/exdev/27370175/
ͤͳ͍ͷ • αʔόʔαΠυͷGoogleAPIͷ • ΞΠςϜߪೖ՝ۚͷ • ՝ۚͷྉۚߋ৽Ԇͱ͍ͬͨൃలతͳ͍ ํͷ • ෆਖ਼՝ۚπʔϧͷ
લఏ 1.ఆظߪೖΛ༗ޮʹ͍ͯ͠ΔͷʹϓϨϛΞϜػ ೳ͕͑ͳ͍ͱ͍͏͜ͱ͙͖ 2.ఆظߪೖ͕ແޮʹͳ͍ͬͯΔͷʹϓϨϛΞϜ ػೳ͕͑ͯ͠·͏ͷ͙͖ 3.Ϣʔβʔͷαϙʔτମ੍Λ͓͖͑ͯ͘ʢϓ ϨϛΞϜػೳͷෆඋෆ۩߹ʹඋ͑ͯʣ
͜ͷલఏΛ࣮ݱ͢Δͷ͕݁ߏ ͔ͬͨ͠
େ͖࣮࣌͘ʹҙͨ͜͠ͱ • ʹఆظߪೖத͔Ͳ͏͔ͷσʔλΛӬଓԽ͢Δ͖Ͱͳ͍ - ՝ۚใGoogleΞΧϯτʹඥ͖ͮɺϢʔβʔ͕ઃఆ͔Βࣗ༝ʹΞΧϯτ ΛมߋͰ͖Δ(Γସ͑ɾՃɾআɾશআͰ͖Δ) - ΞϓϦΛআ͢ΔͱຖճӬଓԽσʔλϦηοτ͞ΕΔ - ಉ͡GoogleΞΧϯτͰෳΛར༻͍ͯ͠Δέʔεߟྔ͢Δඞཁ͕͋Δ
• ՝ۚใͷऔಘΛαϘΒͳ͍ - ՝ۚঢ়ଶGooglePlayετΞΞϓϦ͔Βղͱ࠶։ɺPlayConsole͔Βղͱ ͍͠ɺઃఆ͔ΒGoogleΞΧϯτΓସ͕͑Ͱ͖ΔͨΊɺ͍ͭͰมߋ͕ ൃੜ͢ΔՄೳੑ͕͋Δ - GoogleSDKͷ՝ۚใͷऔಘΩϟογϡΛར༻ͯ͠औಘͯ͘͠ΔͨΊɺඇಉظͰ ͋Δ͕௨৴͕ຖճൃੜ͢Δ͜ͱͳ͍
ଞʹݕ౼ͨ͠ͷ
Google Play Billing Library
GPBL 1.1 • In-app Billing Version3 APIΛ͍͘͢ϥοϓͯ͘͠Ε͍ͯΔ • ܾࡁॲཧɺߪೖใऔಘͷonActivityResultͷϋϯυϦϯάΛ Γͯ͘͘͢͠Ε͍ͯΔ
• ErrorCodeΛPublic enumͰఆٛͯ͘͠ΕͯΔͷ͕݁ߏ͋Γ͕ ͍ͨ • developerPayload͕ඇਪʢUserIdͱ͔ೖΕ͓͚ͯ҆શ ͕ͩͬͨɺߟྀ͕૿͑ͨʣ
onResumeͰ՝ۚঢ়ଶͷߋ৽
ޭҎ֎ͷߟ͑Δ͖Τϥʔέʔε • ະ՝ۚ - ఆظߪೖΛ༗ޮʹͨ͜͠ͱ͕ͳ͍ - ఆظߪೖΛղ͠ɺ՝ۚΛܴ͑ͨޙ • ωοτϫʔΫΤϥʔ -
Googleͷαʔόʔͷଓʹࣦഊͨ͠ • Google͔Βߪೖσʔλ͕ฦͬͯ͜ͳ͍ - ʹGoogleΞΧϯτ͕Ұͭͳ͍࣌ - GoogleͷαʔόʔଓͰΤϥʔ͕ى͖Δ • ఆظߪೖʹରԠ͍ͯ͠ͳ͍ - ରԠ͍ͯ͠ͳ͍ࠃͷIPΞυϨε͔ΒGoogleΞΧϯτ࿈ܞ͕ߦΘΕ͍ͯΔ
શମਤ Ϡϯά͞Μ࡞
Google Play ConsoleͰߦ͑Δ͜ͱ
จID͝ͱͷఆظߪೖղͱ͍͠ • ղ͢Δͱ͍͕͠ԡͤΔΑ͏ʹͳΔ
ςετ՝ۚ • ςετ൛Ͱ՝ۚॲཧ͍ͨ͠߹
ςετ՝ۚ • ແྉͰܾࡁͰ͖ΔΑ͏ʹ͍ͨ͠߹
࣮ʹ͍ͭͯ • RuntimePermission࣮ͷΑ͏ʹϓϨϛΞϜ࣮͢Δͷ͕៉ྷ - ՝ۚޙߦ͍͔ͨͬͨॲཧΛonActivityResultͳͲͰॲཧͯ͋͛͠Δ • ܾࡁ࣌ͷωοτϫʔΫΤϥʔߟ͑ͳͯ͘େৎ - SDKଆ͕͔ͬ͠Γ͍ͯ͠Δ •
ॳظඞͣະϓϨϛΞϜʹ͓ͯ͘͠ - onResumeͰͷ՝ۚใͷऔಘ͕ऴΘΔ·Ͱͭ • ՝ۚΤϥʔ࣌ϩάΛૹΔΑ͏ʹ͓ͯ͘͠
ϋϚͬͨ͜ͱ • ෳͰಉ͡GoogleΞΧϯτΛར༻͍ͯ͠Δ࣌ʹɺͲΕ͔ͷͰ՝ۚঢ়ଶΛมߋͨ࣌͠ɺ ଞͷͷใөʹϥά͕͋ͬͨ - https://www.au.com/support/faq/view.k1205140002/ • طଘͷiOSͷϓϨϛΞϜػೳͷཁ݅ΛAndroidͷSDKͷൣғͰຬͨ͢ඞཁ͕͋ͬͨ • ใ͕গͳ͍ͨΊɺෆ֬ఆͳཁૉ͕ଟ͘ɺશͯಈ͔ͯ͠ݕূ͍ͯ͘͠ඞཁ͕͋ͬͨ
• ϓϨϛΞϜػೳ͕བྷΉը໘ͷεΩʔϚ - ՝ۚใͷऔಘΛஞҰͭඞཁ͕͋ΔͨΊ - ຊʹߟ͑Δ͜ͱଟ͍(৺ͷڣͼ) • ςετ՝ۚΛQAͰߦ͑ΔΑ͏ʹ͢ΔΈͮ͘Γ - ࠷ॳͷࠒຖճQAςετ༻ͷϏϧυΛผͰ࡞ͬͯຖߋ৽ͨ͠Γ͍ͯͨ͠ - όʔδϣϯίʔυΛຖճΠϯΫϦϝϯτͨ͠Γɺ࡞ۀ͕໘ͩͬͨ
ཪٕ • Deploygate͔ΒΠϯετʔϧͨ͠ϏϧυͰ՝ۚ Ͱ͖Δ - ςετ൛ʹΞοϓͨ͠Ϗϧυͱใ͕ಉ͡Ͱ͋Ε ՝ۚػೳ͕ར༻Ͱ͖Δ - ετΞʹ্͛ΒΕͨϏϧυͷApplicationIdͱ࣮ࡍ ʹ՝ۚ͠Α͏ͱ͍ͯ͠ΔId͕Ұக͍ͯ͠Δ͔
- όʔδϣϯίʔυͷ͕Ұக͍ͯ͠Δ͔(͓ͦΒ͘)
ෆਖ਼՝ۚπʔϧ/ϋοΩϯάͷଘࡏ
ରԠࡦ • TokenΛαʔόʔʹૹͬͯෆਖ਼ͳTokenͰͳ͍ ͔ਫ਼ࠪ͢Δ • ՝ۚػೳΛ͑Δ͔Ͳ͏͔ͷஅΛ GooglePlaySDK͔Βͷใ+αʔόʔ͔Βͷ ใʹ͢Δ
Fin.