Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
みてねのAndroid課金開発環境 / Android In-App Purchase Env...
Search
satoru.sasaki
May 20, 2019
Technology
1.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
みてねのAndroid課金開発環境 / Android In-App Purchase Environment
satoru.sasaki
May 20, 2019
More Decks by satoru.sasaki
See All by satoru.sasaki
Dynamic Links with mitene
caad1229
0
1.9k
In-Memory Realms を使って API キャッシュした話 / Use In-Memory Realms
caad1229
0
1.9k
Other Decks in Technology
See All in Technology
並行性の問題を防げ!実践トランザクション入門
occhi
0
280
スキルを作る、その前に!複数人で使われるスキルを 作るためのプロセス
junkifurukawa
2
370
AI時代に必要な脅威モデリング― 変化の速度に負けない理解とリスク判断
masakane55
5
1.2k
AIがコードを書く時代に、エンジニアは何で自分の価値を証明するのか / In an era where AI writes code how do engineers prove their value
carta_engineering
1
780
UniFi(ユニファイ)AIカメラの現場活用
ludicmind
1
410
Cognition AI Japan - ウェビナー2_テストQA_運用監視
cogakira
0
130
OpenSharing について熱く語る〜AI アセットの共有について〜
kameitomohiro
0
250
初対面のメンバーがチームを組み、Claude Codeでゼロからサービスをリリース
mkdev10
1
120
パッチ更新でterraform initが落ちた日
grimoh
1
120
予測不能な実行エージェントを安全にサクッと試せるサンドボックス環境の話
sansantech
PRO
1
140
AIに攻撃される前に、AIに攻撃させる
tsuchikazu
0
170
会社説明資料
persolserverworks
0
9.7k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
516
110k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Prompt Engineering for Job Search
mfonobong
0
500
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
58k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
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
2.2k
Automating Front-end Workflow
addyosmani
1369
210k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
The Pragmatic Product Professional
lauravandoore
37
7.5k
Transcript
ΈͯͶͷ "OESPJE՝ۚ։ൃڥ ΈͯͶͷ.FFUVQܾࡁΛࢧ͑Δٕज़ גࣜձࣾϛΫγΟΈͯͶࣄۀ෦ ࠤʑڿ!DBBE IUUQTCJUMZ70.'K+
ࣗݾհ ࠤʑڿ !DBBE ݄ೖࣾ ݄4/4NJYJΈͯͶʹҠಈ
ࠓ͢͜ͱ w "OESPJEʹ͓͚Δ՝ۚʹ͍ͭͯ w ΈͯͶͷ"OESPJE։ൃڥʹ͍ͭͯ w ಋೖखॱ w ͓͍ͬͯͨํ͕Α͍͜ͱ w
͓·͚ w ·ͱΊ
"OESPJEʹ͓͚Δ՝ۚʹ͍ͭͯ
wΞϓϦ՝ۚ(PPHMFͱͷΓऔΓ ͢Δ w1MBZ$POTMFͱ࿈ܞ͢ΔͨΊొ͞Εͨ ύοέʔδͰͳ͚Ε՝ۚػೳ͑ͳ ͍ "OESPJEʹ͓͚Δ՝ۚʹ͍ͭͯ
ΈͯͶͷ"OESPJE։ൃڥʹ͍ͭͯ
ΈͯͶͷ։ൃڥ wݸਓڥআ͖ɺେ·͔ʹ̏ͭͷڥ
ΈͯͶͷ։ൃڥ wݸਓڥআ͖ɺେ·͔ʹ̏ͭͷڥ
ΈͯͶͷ։ൃڥ wݸਓڥআ͖ɺେ·͔ʹ̏ͭͷڥ
ΈͯͶͷ։ൃڥ wݸਓڥআ͖ɺେ·͔ʹ̏ͭͷڥ
w ֤ڥ͝ͱʹΞϓϦΛ࡞ w ՝ۚΛ༗ޮʹ͢Δ w ςετ՝ۚͰ͖ΔΑ͏ʹ͢Δ w ࣮͢Δ ಋೖखॱ
w ֤ڥ͝ͱʹΞϓϦΛ࡞ w ՝ۚΛ༗ޮʹ͢Δ w ςετ՝ۚͰ͖ΔΑ͏ʹ͢Δ w ࣮͢Δ ࣮·Ͱͷखॱ
՝ۚ࣌ͷཧ wखݩͷϏϧυɾ%FQMPZ(BUF৴ͨ͠ΞϓϦͰςετ՝͍ۚͨ͠
֤ڥ͝ͱʹΞϓϦΛ࡞
֤ڥ͝ͱʹΞϓϦΛ࡞ wEFWFMPQͱTUBUJOHશମެ։͠ͳ͍લఏ
wϝϦοτ wΒ͔͕͠ڐ͞ΕΔ wࣦഊΛؾʹͤͣ͋Δఔ͖ʹͰ͖Δ wച্Ϩϙʔτ͕ςετڥͱผʹͳΔ wσϝϦοτ w͏͔ͬΓશମެ։ͯ͠͠·͏ڪΕ͋Γ wಉ͡ઃఆΛ֤ڥʹө͢Δඞཁ͕͋Δ ΞϓϦΛ͚Δ͜ͱͷϝϦοτɾσϝϦοτ
w ֤ڥ͝ͱʹΞϓϦΛ࡞ w ՝ۚΛ༗ޮʹ͢Δ w ςετ՝ۚͰ͖ΔΑ͏ʹ͢Δ w ࣮͢Δ ࣮·Ͱͷखॱ
#JMMJOH-JCSBSZΛؚΉBQLΛ1MBZ4UPSFʹެ։͢Δ ՝ۚΛ༗ޮʹ͢ΔͨΊʹ͢Δ͜ͱ
ᶃ#JMMJOH-JCSBSZՃͯ͠Ϗϧυ ᶄ1MBZ$POTPMFʹBQLΞοϓϩʔυ ᶅ1MBZ$POTPMFͰఆظߪೖΞΠςϜ࡞ ᶆΫϩʔζυΞϧϑΝͰެ։ ՝ۚΛ༗ޮʹ͢ΔͨΊʹ͢Δ͜ͱ
ᶃ#JMMJOH-JCSBSZՃͯ͠Ϗϧυ ᶄ1MBZ$POTPMFʹBQLΞοϓϩʔυ ᶅΫϩʔζυΞϧϑΝͰެ։ ᶆ1MBZ$POTPMFͰఆظߪೖΞΠςϜ࡞ ՝ۚΛ༗ޮʹ͢ΔͨΊʹ͢Δ
ᶃ#JMMJOH-JCSBSZՃͯ͠Ϗϧυ ᶄ1MBZ$POTPMFʹBQLΞοϓϩʔυ ᶅΫϩʔζυΞϧϑΝͰެ։ ᶆ1MBZ$POTPMFͰఆظߪೖΞΠςϜ࡞ ՝ۚΛ༗ޮʹ͢ΔͨΊʹ͢Δ
ᶃ#JMMJOH-JCSBSZՃͯ͠Ϗϧυ ᶄ1MBZ$POTPMFʹBQLΞοϓϩʔυ ᶅΫϩʔζυΞϧϑΝͰެ։ ᶆ1MBZ$POTPMFͰఆظߪೖΞΠςϜ࡞ ՝ۚΛ༗ޮʹ͢ΔͨΊʹ͢Δ
ᶃ#JMMJOH-JCSBSZՃͯ͠Ϗϧυ ᶄ1MBZ$POTPMFʹBQLΞοϓϩʔυ ᶅΫϩʔζυΞϧϑΝͰެ։ ᶆ1MBZ$POTPMFͰఆظߪೖΞΠςϜ࡞ ՝ۚΛ༗ޮʹ͢ΔͨΊʹ͢Δ
w ֤ڥ͝ͱʹΞϓϦΛ࡞ w ՝ۚΛ༗ޮʹ͢Δ w ςετ՝ۚͰ͖ΔΑ͏ʹ͢Δ w ࣮͢Δ ࣮·Ͱͷखॱ
wެࣜʹΑΔͱ ςετߪೖ ςετߪೖɺಛఆͷϥΠηϯε ςετ Ϣʔβʔ͕՝ۚΛ ΘͣʹΞϓϦΞΠςϜΛߪೖͰ͖Δํ๏Ͱ͢ɻςετߪ ೖΞϧϑΝ൛ɺϕʔλ൛ϦϦʔεʹରͯ͠ͷΈՄೳͰ͢ɻ
wͭ·Γɺςετߪೖ͢Δʹɺɺ ςετߪೖ
wͭ·Γɺςετߪೖ͢Δʹɺɺ ςετߪೖ ςελʔ ϥΠηϯε ςετ Ϣʔβʔ ʹͳΔඞཁ͕͋Δ
wςελʔ wΞϧϑΝ൛ɾϕʔλ൛ΛHPPHMFQMBZTUPSF͔ΒऔಘͰ͖Δ wϥΠηϯεςετϢʔβ wςετߪೖ͕ڐՄ͞ΕͨϢʔβ ςελʔͱϥΠηϯεςετϢʔβ ΞϓϦϥΠηϯεΛ༻ͨ͠ΞϓϦ՝ۚͷςετ https://support.google.com/googleplay/android-developer/answer/6062777?hl=ja ΞϓϦϥΠηϯε https://developer.android.com/google/play/licensing/overview.html
w1MBZ$POTPMFͷΞϓϦμογϡϘʔυ͔ΒςελʔՃ wΦϓτΠϯ63-ʹΞΫηε ςελʔʹͳΔ https://play.google.com/apps/testing/<package>
w1MBZ$POTPMFઃఆΞΧϯτͷৄࡉϥΠηϯεςετ wΞΧϯτՃ ϥΠηϯεςετϢʔβʔʹͳΔ
wखݩͷϏϧυͰςετߪೖͰ͖ΔΑ͏ʹͳΔ w(PPHMF1MBZ͔ΒΞϧϑΝ൛ΛΠϯετʔϧ͠ͳͯ͘Α͍ ςετߪೖͰ͖·͢
ςετߪೖͱຊߪೖ
ςετߪೖͰগ͠ϋϚΔ͜ͱ
ςετߪೖͰগ͠ϋϚΔ͜ͱ ొ͢ΔΞΧϯτϓϥΠϚϦΞΧϯτͰ͋Δ͜ͱ
ςετߪೖͰগ͠ϋϚΔ͜ͱ wϓϥΠϚϦΞΧϯτ w"OESPJEҰͭͷʹෳΞΧϯτΛొ͢ Δ͜ͱ͕Ͱ͖Δ wΞϓϦ՝ۚʹ͏ΞΧϯτ࠷ॳʹొͨ͠ ΞΧϯτͱͳ͍ͬͯΔ ϓϥΠϚϦΞΧϯτ wͭ·ΓɺΞϧϑΝ൛ςετߪೖ͢Δʹɺϓϥ ΠϚϦΞΧϯτΛొ͠ͳ͍ͱςετ՝ۚͰ͖
ͳ͍
ςετߪೖͰগ͠ϋϚΔ͜ͱ ςετߪೖ͍ͨ͠ΞΧϯτ cc ʹ࠷ॳʹొ͢ΔΞΧϯτ wͭ·Γ
w ֤ڥ͝ͱʹΞϓϦΛ࡞ w ՝ۚΛ༗ޮʹ͢Δ w ςετ՝ۚͰ͖ΔΑ͏ʹ͢Δ w ࣮͢Δ ࣮·Ͱͷखॱ
ௐࠪͱ͔ࢀߟʹͨ͠ͷ wϥΠϒϥϦ w#JMMJOH$MJFOU-JCSBSZW ࠷ۙWϦϦʔε͞Εͨ wࢀߟʹͨ͠ͷ wެࣜυΩϡϝϯτ w(PPHMFͷαϯϓϧɺྫͷΞϨ 5SJWJBM%SJWF@W
w%SPJE,BJHJৄղఆظߪೖ Droidkaigi 2019 ৄղఆظߪೖ (·Μͩʔ @ymnd ͞Μ) https://developer.android.com/google/play/billing/billing_testing?hl=ja#solo TrivalDrive_v2 https://developer.android.com/google/play/billing/billing_library_overview
ઃܭ wΑ͋͘ΔΞϨ w.77. wࠓճɺ#JMMJOH$MJFOUΛѻ͏%BUB4PVSDFʹ ͍ͭͯগ͚ͩ͠
ઃܭ wΑ͋͘ΔΞϨ w.77. wࠓճɺ#JMMJOH$MJFOUΛѻ͏%BUB4PVSDFʹ ͍ͭͯগ͚ͩ͠
ઃܭ wΑ͋͘ΔΞϨ w.77. wࠓճɺ#JMMJOH$MJFOUΛѻ͏%BUB4PVSDFʹ ͍ͭͯগ͚ͩ͠
%BUB4PVSDF w#JMMJOH-JCSBSZΛ3Y+BWBͰϥοϐϯά wҰ෦ϨεϙϯείʔϧόοΫ෦Ͱ໘ͳ "1*͕͋ͬͨ w$BMMCBDLϝΠϯεϨουͰͷ࣮ߦ͕ඞਢ w(JTUࢀরͯ͠Έ͍ͯͩ͘͞ Google ͷ੩తϨεϙϯε͕͋ΔͷͰɺΞΠςϜͳͯ͘୯ମςετͰ͖·͢ https://developer.android.com/google/play/billing/billing_testing?hl=ja#solo Gist
https://gist.github.com/caad1229/a6aea2e863b87074e5cf29e13504fcff
w ֤ڥ͝ͱʹΞϓϦΛ࡞ w ՝ۚΛ༗ޮʹ͢Δ w ςετ՝ۚͰ͖ΔΑ͏ʹ͢Δ w ࣮͢Δ ࣮·Ͱͷखॱ
͓͍ͬͯͨ΄͏͕ྑ͍͜ͱ
4FSWFSͰϨγʔτݕূͯ͠Β͏ wߪೖϋοΫ͢Δ'SFFEPNͱ-VDLZ1BUDIFSͱ͍ͬͨΞϓϦ͕͋Δ wϨγʔτݕূ4FSWFSʹͤΔ͜ͱͰɺෆਖ਼Λ͙͜ͱ͕Ͱ͖Δ wΈͯͶͰ݅ɺෆਖ਼Ϩγʔτ͕͋ͬͨ w($1αʔϏεΞΧϯτ1MBZ$POTPMFͱ࿈ܞ͍ͯ͠Δඞཁ͕͋Δ
4FSWFSͰϨγʔτݕূͯ͠Β͏ wߪೖϋοΫ͢Δ'SFFEPNͱ-VDLZ1BUDIFSͱ͍ͬͨΞϓϦ͕͋Δ wϨγʔτݕূ4FSWFSʹͤΔ͜ͱͰɺෆਖ਼Λ͙͜ͱ͕Ͱ͖Δ wΈͯͶͰ݅ɺෆਖ਼Ϩγʔτ͕͋ͬͨ w($1αʔϏεΞΧϯτ1MBZ$POTPMFͱ࿈ܞ͍ͯ͠Δඞཁ͕͋Δ ͔͔Δ͕ɺ͋ͬͨ΄͏͕ྑ͍
ߪೖ෮ؼॲཧ w(PPHMFɾΈͯͶΞϓϦɾ4FSWFSͰͷ߹ੑ͕औΕͳ͔ͬͨ߹ͷରԠ
͓·͚
։ൃ༻ΞϓϦͷϦδΣΫτ w(PPHMF͔Β։ൃ༻ΞϓϦ͕ϦδΣΫτ͞Εͨ w։ൃΞϓϦ͕ɺͳΓ͢·͠ೝఆ͞Εͨ wύοέʔδ͕ࣅ͍ͯͨ w4UPSFใΛ1SPEVDUͱಉ͡ͷ͍ͬͯͨ wυϝΠϯূ໌ͱ͔ɺ1MBZ$POTPMFͷεΫγϣΛϝʔϧͰૹͬͯ߅ٞ
։ൃ༻ΞϓϦͷϦδΣΫτ w(PPHMF͔Β։ൃ༻ΞϓϦ͕ϦδΣΫτ͞Εͨ w։ൃΞϓϦ͕ɺͳΓ͢·͠ೝఆ͞Εͨ wύοέʔδ͕ࣅ͍ͯͨ w4UPSFใΛ1SPEVDUͱಉ͡ͷ͍ͬͯͨ wυϝΠϯূ໌ͱ͔ɺ1MBZ$POTPMFͷεΫγϣΛϝʔϧͰૹͬͯ߅ٞ
·ͱΊ
·ͱΊ wΈͯͶͰ͜ͷΑ͏ͳྲྀΕͰ՝ۚڥΛߏஙɾ։ൃͨ͠ w։ൃํ๏༷ʑͰ͋ΔͷͰɺͦΕͧΕͷ։ൃڥʹ͋ͬͨํ๏Λ ಋೖͯ͠ྑ͍ͱࢥ͏ wҰͭͷಋೖࣄྫͱͯ͠ࢀߟʹ͍͚ͯͨͩ͠Ε͍Ͱ͢
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠