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
78
Mater of Subscription
FujiKinaga
October 01, 2018
Tweet
Share
More Decks by FujiKinaga
See All by FujiKinaga
Flutterで実装する実践的な攻撃対策とセキュリティ向上
fujikinaga
2
1.1k
最新のCompose Multiplatform を使うとiOSとAndroidアプリはどれくらい作れるのか
fujikinaga
2
700
Androidのテストの理解を深めてみた
fujikinaga
0
69
開発案件の進み方
fujikinaga
0
110
深いい勉強会 vol.10
fujikinaga
0
92
深いい勉強会 vol.9
fujikinaga
0
120
Understanding Dagger2 Part1
fujikinaga
0
63
深いい勉強会
fujikinaga
2
81
深いい勉強会 The Navigation Component
fujikinaga
0
72
Other Decks in Programming
See All in Programming
AIとペアプロして処理時間を97%削減した話 #pyconshizu
kashewnuts
1
210
atmaCup #23でAIコーディングを活用した話
ml_bear
4
750
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
550
Agent Skills Workshop - AIへの頼み方を仕組み化する
gotalab555
15
8.2k
猫の手も借りたい!ので AIエージェント猫を作って社内に放した話 Claude Code × Container Lambda の Slack Bot "DevNeko"
naramomi7
0
260
あなたはユーザーではない #PdENight
kajitack
4
340
Rubyと楽しいをつくる / Creating joy with Ruby
chobishiba
0
210
米国のサイバーセキュリティタイムラインと見る Goの暗号パッケージの進化
tomtwinkle
2
510
AI Assistants for Your Angular Solutions
manfredsteyer
PRO
0
110
Ruby x Terminal
a_matsuda
7
590
エンジニアの「手元の自動化」を加速するn8n 2026.02.27
symy2co
0
110
SourceGeneratorのマーカー属性問題について
htkym
0
170
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
200
Faster Mobile Websites
deanohume
310
31k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
120
The SEO Collaboration Effect
kristinabergwall1
0
380
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
230
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
170
What's in a price? How to price your products and services
michaelherold
247
13k
So, you think you're a good person
axbom
PRO
2
1.9k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
510
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
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.