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
Auto-Renewable Subscriptionsを5年間運用した歴史から学ぶ注意点
Search
yuutetu
September 01, 2018
Technology
1
1.8k
Auto-Renewable Subscriptionsを5年間運用した歴史から学ぶ注意点
iOSDC2018で発表した内容です
yuutetu
September 01, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
LLMアプリケーションの評価の実践と課題 ~PharmaXにおける今後の展望~
pharma_x_tech
2
160
クラウド利用者の「責任」をどう果たす?AWSセキュリティ対策のススメ #AWSSummit
hiashisan
0
270
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
データベース研修 DB基礎【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
210
Github Actions 로 Android 팀의 효율성 극대화
hadonghyun
0
160
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
[I/O Extended Android 2024] What`s new in Android 2024
kyeongwan
0
220
開発と事業を繋ぐ!SREのオブザーバビリティ戦略 ~ Developers Summit 2024 Summer ~
leveragestech
0
630
CTOから見た事業開発とプロダクト開発 / My Perspective on Business and Product Development as CTO
keisuke69
4
960
初中級者用如何使用backlog -VALE TUDOEDITION-
in0u
0
140
Docker互換のセキュアなコンテナ実行環境「Podman」超入門
devops_vtj
6
3.2k
ここがすごいよ! AWS Systems Manager!
saichan11
0
1.8k
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
20
1.3k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
20
7.2k
Building Your Own Lightsaber
phodgson
101
5.9k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
105
6.8k
Large-scale JavaScript Application Architecture
addyosmani
506
110k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
26
1.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
229
130k
Visualization
eitanlees
139
14k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
13
430
Speed Design
sergeychernyshev
9
270
Testing 201, or: Great Expectations
jmmastey
33
6.9k
The Invisible Customer
myddelton
117
13k
Transcript
Auto-Renewable Subscriptions Λ5ؒӡ༻ͨ͠ྺ࢙͔ΒֶͿҙ pixiv.inc Masayuki Kagae
yuutetu pixiv iOS, AndroidΞϓϦΛ୲͠ ͍ͯ·͢
• ΞϓϦ৹ࠪͷϦδΣΫτ༰ؚ͕͍͔ͭ͘·Ε·͢ɻ • ΞϓϦ৹ࠪͷϦδΣΫτ༰ɺΞϓϦʹΑͬͯɾঢ়گʹΑͬͯɾ࣌ظʹ ΑͬͯมΘΓ͏Δͷͩͱࢥ͍ͬͯ·͢ɻ • ʮ͜Μͳࣄ͕͋ͬͨΑʯʮͦͷ࣌͜͏ͨ͠Αʯͱ͍͏͙Β͍Ͱฉ͍ͯ Β͑Δͱॿ͔Γ·͢ɻ
ҙ
• In App Purchaseͱʁ(3) • Auto-renewable subscriptionsͱʁ(2) • pixivͰͷAuto-renewable subscriptionsͷ࣮ࣄྫ(10)
• ૺ۰֤ͨ͠छ(15) ΞδΣϯμ ※ όοΫΤϯυͷʹҰ৮Ε·ͤΜ ฉ͖͍ͨํੋඇฐࣾ༡ͼʹདྷ͍ͯͩ͘͞ -> https://www.wantedly.com/projects/163009
In App Purchase
Apple͕ఏڙ͍ͯ͠ΔiOSΞϓϦ্Ͱ՝ۚϞσϧΛ࣮͢ΔͨΊͷΈ In App Purchase 4UPSF,JU App Store pixiv
API Server
In App Purchase 4UPSF,JU App Store pixiv API
Server ߪೖϑϩʔΑΖ͘͠ ߪೖྃͨ͠Α
API Serverʹ՝ۚͷϨγʔτΛૹͬͯΛΒ͏ In App Purchase 4UPSF,JU App Store
pixiv API Server ߪೖྃͨ͠Α ՝ۚͷಛయͩΑ
• ফඅܕ( Consumable ) • ඇফඅܕ( Non-consumable )
• ࣗಈߋ৽ߪಡܕ( Auto-renewable subscriptions ) • ඇߋ৽ߪಡܕ( Non-renewable subscriptions )
ࣗಈߋ৽ߪಡܕ
• ʮֹ݄ ooԁʯΛ࣮ݱ͢Δ՝ۚܕ • 1िؒɾ1ϲ݄ɾ2ϲ݄ɾ3ϲ݄ɾ6ϲ݄ɾ1͕બΔ • ظݶ͕ΕͨΒࣗಈతʹߋ৽͞ΕΔ • ղ͍ͨ͠ͱ͖ɺߋ৽ͷ24࣌ؒલ·Ͱʹղखଓ͖͢Δͱߋ৽͞Εͳ͍ •
ֹۚมߋΛܭը͢Δ͜ͱͰ͖Δ • ແྉׂҾͰͷ͓ࢼ͠ظؒΛΈࠐΉ͜ͱͰ͖Δ ࣗಈߋ৽ߪಡܕ
pixiv ͱ ࣗಈߋ৽ߪಡܕ՝ۚ
pixivϓϨϛΞϜ • ਓؾͷ࡞ΛΑΓ͘ɺΑΓ ؆୯ʹ୳ͤΔαϒεΫϦϓγϣ ϯαʔϏε • ֹ݄ ¥600
• (Web൛Android൛ͱҟͳΔ) • όοΫΤϯυ͕ϓϨϛΞϜػೳΛ ཧ͠ɺWeb൛Android൛ؔͳ͘Ϋ ϩεϓϥοτϑΥʔϜͰར༻Մೳ
App • ϓϨϛΞϜొ • ϓϨϛΞϜ෮ݩ • ϦτϥΠ Server
• Ϩγʔτݕূ • ϓϨϛΞϜঢ়ଶɾϨγʔτظ ݶཧ Ϣʔβͷૢ࡞ʹجͮ͘ॲཧ+ิॿ ҆શʹϓϨϛΞϜঢ়ଶΛཧ͢Δ
ϓϨϛΞϜొ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ/ొՄೳ ͳΞΧϯτ͔֬ೝ 2.
՝ۚΞΠςϜ࠶औಘɾ֬ೝ 3. ܾࡁ 4. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ
ϓϨϛΞϜొ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ/ొՄೳ ͳΞΧϯτ͔֬ೝ 2.
՝ۚΞΠςϜ࠶औಘɾ֬ೝ 3. ܾࡁ 4. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ ͢ͰʹϓϨϛΞϜΞΧϯτͰͳ͍͔ʁ ͜ͷ··՝ۚΛΒ͍͍͔ͤͯʁ ϓϨϛΞϜΞΧϯτͳͷʹɺܾࡁॲཧΛΒ ͤͯ͠·͏ͱʮ2ॏొʯʹͳͬͯ͠·͏ɻ ՝͕ۚΔલʹࢭΊ͓ͯ͘ɻ
ϓϨϛΞϜొ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ/ొՄೳ ͳΞΧϯτ͔֬ೝ 2.
՝ۚΞΠςϜ࠶औಘɾ֬ೝ 3. ܾࡁ 4. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ ఏڙதͷ՝ۚΞΠςϜ͔ʁ
ϓϨϛΞϜొ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ/ొՄೳ ͳΞΧϯτ͔֬ೝ 2.
՝ۚΞΠςϜ࠶औಘɾ֬ೝ 3. ܾࡁ 4. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ ܾࡁϑϩʔ։࢝ AppStoreʹͯϩάΠϯ͍ͯ͠ ͳ͍߹ʹɺϩάΠϯΛଅ ͢͜ͱͬͯ͘ΕΔɻ
ϓϨϛΞϜొ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ/ొՄೳ ͳΞΧϯτ͔֬ೝ 2.
՝ۚΞΠςϜ࠶औಘɾ֬ೝ 3. ܾࡁ 4. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ SKPaymentTransactionObserverܦ༝ʹͯड͚औ ΕΔTransactionΛͱʹɺܾࡁϨγʔτΛૹΓ ϓϨϛΞϜొ͢Δ
ϓϨϛΞϜొ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ/ొՄೳ ͳΞΧϯτ͔֬ೝ 2.
՝ۚΞΠςϜ࠶औಘɾ֬ೝ 3. ܾࡁ 4. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ ϓϨϛΞϜొྃΛΞΧϯτঢ়ଶʹө͢Δ
ϓϨϛΞϜ෮ݩ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ 2. ෮ݩॲཧ
3. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 4. pixivΞΧϯτͷ࠶ϩάΠϯ
ϓϨϛΞϜ෮ݩ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ 2. ෮ݩॲཧ
3. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 4. pixivΞΧϯτͷ࠶ϩάΠϯ ϓϨϛΞϜΞΧϯτ͔֬ೝ ϓϨϛΞϜΞΧϯτͳΒ෮ݩͯ͠ ҙຯ͕ͳ͍
ϓϨϛΞϜ෮ݩ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ 2. ෮ݩॲཧ
3. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 4. pixivΞΧϯτͷ࠶ϩάΠϯ ࠷৽ͷ՝ۚϨγʔτʹRefresh͞Εɺ SKPaymentTransactionObserverʹ Transaction͕ൃߦ͞ΕΔ
ϓϨϛΞϜ෮ݩ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ 2. ෮ݩॲཧ
3. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 4. pixivΞΧϯτͷ࠶ϩάΠϯ SKPaymentTransactionObserverܦ༝ʹͯड͚औ ΕΔTransactionΛͱʹɺܾࡁϨγʔτΛૹΓ ϓϨϛΞϜొ͢Δ
ϓϨϛΞϜ෮ݩ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ 2. ෮ݩॲཧ
3. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ ϓϨϛΞϜঢ়ଶΛΞϓϦʹө
ϦτϥΠॲཧ 4UPSF,JU App Store pixiv API Server ߪೖྃͨ͠Α
• ՝ۚͰ͖͕ͨϓϨϛΞϜొ͞Εͳ͍έʔε͕Ͳ͏ͯ͠ൃੜ͢Δ
ϓϨϛΞϜొ SKPaymentQueue.canMakePayments()Ͱ ʮ՝ۚՄೳͳ༻ऀʯͰ͋Δ͜ͱΛ ֬ೝͭͭ͠ɺ 1. pixivΞΧϯτͷ࠶ϩάΠϯ/ొՄೳ ͳΞΧϯτ͔֬ೝ 2.
՝ۚΞΠςϜ࠶औಘɾ֬ೝ 3. ܾࡁ 4. αʔόʹܾࡁϨγʔτΛૹΔ(ొॲཧ) 5. pixivΞΧϯτͷ࠶ϩάΠϯ ͔ͬ͠ΓτϥϯβΫγϣϯͯ͋͛͠ Δඞཁ͕͋Δ
• ܾࡁͱϓϨϛΞϜొ·ͰʹτϥϯβΫγϣϯΛ͔·͓ͤͯ͘ • τϥϯβΫγϣϯ͕ੜ͖͍ͯͨΒɺαʔόʹ࠶ϨγʔτΛૹΔ ϦτϥΠॲཧ
pixivϓϨϛΞϜ • ਓؾͷ࡞ΛΑΓ͘ɺΑΓ ؆୯ʹ୳ͤΔαϒεΫϦϓγϣ ϯαʔϏε • ֹ݄ ¥600
• (Web൛Android൛ͱҟͳΔ) • όοΫΤϯυ͕ϓϨϛΞϜػೳΛ ཧ͠ɺWeb൛Android൛ؔͳ͘Ϋ ϩεϓϥοτϑΥʔϜͰར༻Մೳ
͜ͷӡ༻ʹɺزଟͷ ࠔ͕ͪߏ͍͑ͯͨ
1 ϓϨϛΞϜొը໘ ༷ʑͳཁҼͰมಈ͢Δ
• ϓϨϛΞϜొը໘(LP: Landing Page)ͷσβΠϯొऀʹେ͖͘Өڹ • ࣗಈߋ৽ߪಡܕ՝ۚෳࡶͳͷͰஸೡͳઆ໌͕ඞཁ • ʮ1ϲ݄ܦաͨ͠Βࣗಈߋ৽͞ΕΔʯʮղߋ৽ͷ24࣌ؒલ·Ͱʯ • ͜͜ɺAppleͷϨϏϡΞʔ͔ͳΓؾʹ͢ΔϙΠϯτ
• ՝ۚΞΠςϜ໊ɾՁ֨ࣾ֎ͷཁҼͰมΘΓ͏Δ • ʮॳ݄ແྉʯΛഇࢭͯ͠ɺ՝ۚΞΠςϜ໊͔Βʮॳ݄ແྉʯΛແ͍ͨ͘͠ • ՝ۚΞΠςϜͷՁ֨มߋ มಈཁҼͷྫ
• ϓϨϛΞϜLPը໘ΛWKWebViewʹ࣮ͯ • ՝ۚΞΠςϜ໊ɾՁ֨ใStoreKit͔Βऔಘͯ͠දࣔ • WebϖʔδଆͰJSͷϝιουΛ༻ҙ͠ɺevaluateJavaScriptʹͯड͚͢ • ొɾ෮ݩϘλϯURL SchemeΛ։͘Α͏ʹ͢Δ͜ͱʹΑΓొɾ෮ݩϑ ϩʔʹೖΔ
มಈʹରॲͰ͖ΔॊೈͳϓϨϛΞϜLP
• όοΫΤϯυʹΑΔߴͳA/Bςετ͕Մೳʹͳͬͨ • ΑΓਖ਼֬ʹϓϨϛΞϜػೳɾࣗಈߋ৽ߪಡܕΛ͑ΒΕΔ • چόʔδϣϯʹ࠷৽ͷαϙʔτΛఏڙͰ͖Δ • WebViewΫϥογϡͳͲڍಈ͕ෆ҆ఆʹͳΓ͕ͪͰ͋Δ • ϓϨϛΞϜLPͳΒॏ͍JSແ͍ͷͰͦ͜·Ͱෆ҆ఆʹͳΓͮΒ͍
WKWebViewʹΑΔϓϨϛΞϜLP ॊೈͳϓϨϛΞϜLPͷͨΊʹ
• ͔ͬ͠ΓߪೖͰ͖Δ՝ۚΞΠςϜ໊ɾՁ֨Λදࣔ͢Δ • Ձ֨มߋ͕͋ͬͯ҆৺ StoreKit͔Βͷ՝ۚΞΠςϜใදࣔ ॊೈͳϓϨϛΞϜLPͷͨΊʹ
ొɾ෮ݩϘλϯURL SchemeͰಈ࡞ ॊೈͳϓϨϛΞϜLPͷͨΊʹ
2 ࣗಈߋ৽ߪಡܕ՝ۚͷ ϨϏϡʔΨοπϦߦΘΕΔ
• ຖ݄ࣗಈతʹߋ৽͞ΕΔ • ղ͕͍͠ • ղํ๏ɺAppStoreͷΞΧϯτը໘͔ΒͰ͖Δ • ߋ৽͠ͳ͍ͨΊʹߋ৽ͷ24࣌ؒલ·Ͱʹղ͢Δඞཁ͕͋Δ • ͍ͬͯΔظؒػೳ͕༗ޮʹͳ͍ͬͯΔ
ࣗಈߋ৽ߪಡܕ՝͍ۚ͠
͔ͬ͠Γઆ໌͢Δ ΞϓϦΠϯετʔϧϖʔδ pixivϓϨϛΞϜొը໘
• ʮ͜ͷ՝ۚͰԿ͕Ͱ͖ΔΑ͏ʹͳΔʁʯ • ʮετΞͷઆ໌จͰϓϥϯʹ͍ͭͯઆ໌ͯ͠Ͷʯ • ʮϓϨϛΞϜొը໘ͷҙॻ͖ɺϢʔβͷొϑϩʔͰݟ͑Δॴʹ ஔ͍ͯͶʯ Appleؾʹ͍ͯ͠Δ
3 AppStoreͷՁ֨มߋ
• 20154݄ʹຊϦʔδϣϯͰͷҝସʹΑΔՁ֨มߋ͕͋ͬͨɻ • ֹ݄࣌¥600ͩͬͨ՝ۚΞΠςϜ͕ຊϦʔδϣϯʹֹ͓͍݄ͯ¥720ʹ ্͕Γ͠Α͏ͱ͍ͯͨ͠ Ձ֨มߋͷා͞ ¥600/݄ ¥720/݄
ຊʹ͜ΕͰྑ͍ͩΖ ͏͔ʁ
• ՝ۚͷՁ֨ɺAppleʹΑͬͯ༻ҙ͞ΕͨෳछྨͷՁ͔֨Βબ͢ΔͷΈ • iOS൛pixivͷϓϨϛΞϜͷՁ֨ɺWeb൛Android൛ͱҟͳ͍ͬͯΔ • ͞ΒͳΔେ͖ͳဃආ͚͍ͨ ϓϨϛΞϜՁ֨ͷဃΛݮΒ͍ͨ͠
ʮԾʹ্͕Γͨ͠߹ɺ Կ͕ى͖ΔͷͩΖ͏ʁʯ
• ϢʔβʹԿ௨ͳ্͛͘͞ΕΔΘ͚ઈରͳ͍ • Կ͕ى͖Δͷ͔ɺಛʹυΩϡϝϯτ͕ͳ͍ɾɾɾ ʮԾʹ্͕Γͨ͠ΒԿ͕ى͖ΔΜͩΖ͏ʁʯ
্͛Λܭըͨ͠߹ ɺͲ͏ͳΔʁ
• ϢʔβʹEϝʔϧͱϓογϡ௨Ͱ্͛ͷ௨ͱ৽͍͠Ձ֨ͷಉҙ֬ೝ ͕ߦΘΕΔ • ಉҙ͠ͳ͍ɾԠ͠ͳ͍߹ɺαϒεΫϦϓγϣϯ͕ऴྃ͢Δ ্͛Λܭըͨ࣌͠
• ϢʔβʹEϝʔϧͱϓογϡ௨Ͱ্͛ͷ௨ͱ৽͍͠Ձ֨ͷಉҙ֬ೝ ͕ߦΘΕΔ • ಉҙ͠ͳ͍ɾԠ͠ͳ͍߹ɺαϒεΫϦϓγϣϯ͕ऴྃ͢Δ ্͛Λܭըͨ࣌͠ ์ஔ͢Δͱɺ͜ͷϑϩʔ͕࣮ߦ͞ΕΔͷͰʁ
ରԠ: ՝ۚΞΠςϜͷՁ ֨ଳΛҰͭԼ͛ɺ৽Ձ ֨¥600ʹਾ͑ஔ͘
• ϓϨϛΞϜLPมಈཁҼ͕େ͖͍ WebViewΛΈ߹Θ࣮͕͓ͤͨ͢͢Ί • Auto-renewable subscriptions͍͠ ొஈ֊Ͱஸೡʹઆ໌͠Α͏ AppleͱͷΓऔΓ͋Δ͔Βɺ༨༟Λ࣋ͬͯ৹ࠪఏग़͠Α͏ɻ
͜͜·Ͱͷ·ͱΊ
4 ՝ۚΞΠςϜͷҠߦ
ӡ༻͍ͯ͠Δͱඞͣͬͯ͘Δ՝ۚϓϥϯͷௐ Ͳ͏ͬͯʮॳ݄ແྉʯΛഇࢭ͢Δͷ͔ • ӡ༻தͷ՝ۚΞΠςϜ͔Βʮॳ݄ແྉʯΛऔΓ֎͢͜ͱͰ͖ͳ͍ • ৽͍͠՝ۚΞΠςϜΛ࡞ͬͯҠߦ͢Δ ʮॳ݄ແྉʯΛഇࢭ͍ͨ͠
• ෳͷ՝ۚϓϥϯͷؔੑΛઃఆ͢Δ͜ͱ͕Ͱ͖Δ Subscription Group ͍҆ϓϥϯ=݄ ී௨ͷϓϥϯ=݄ ߴ͍ϓϥϯ= ݄
ී௨ͷϓϥϯ= ্Ґ ԼҐ
• ՝ۚΞΠςϜΛͻͱ·ͱΊʹͰ͖Δ • ಉ࣌ʹ1ϓϥϯͷొͷΈͰ͖ΔΑ͏ʹ͢Δ • ՝ۚΞΠςϜͷ্ԼؔΛઃఆͰ͖Δ • ϓϥϯมߋ࣌ʹ͍͍ײ͡ʹಈ͘ • ΞοϓάϨʔυͷͱ͖ʹଈ࠲ʹϓϥϯ͕ΓସΘΔ
• μϯάϨʔυɾΫϩεάϨʔυɺ࣍ճߋ৽ʹΓସΘΔ Subscription Group
• ՝ۚΞΠςϜΛՃ͢Δ • ಉҰͷSubscription GroupsͷಉϨϕϧʹஔ • ສ͕Ұʹɺ2ॏొ͕ઈରʹى͜Βͳ͍Α͏ʹ͢Δ • (ແ͍ͩΖ͏͚Ͳɺ)ΫϩεάϨʔυͰ͖ΔΑ͏ʹ •
ϓϨϛΞϜొ࣌ʹ৽͍͠՝ۚΞΠςϜͰొ͢Δ • ϓϨϛΞϜͷ෮ݩ(Restore)࣌ʹɺ৽ɾچ྆ํͷ՝ۚΞΠςϜΛରͱ͢Δ • 1ϲ݄ແྉϓϥϯͷϢʔβRestoreͰ͖ΔΑ͏ʹɻ ৽͍͠՝ۚΞΠςϜʹҠߦ͢Δ
5 ৽ػೳ࣮ʹ͏Өڹ <ϩάΠϯඞਢഇࢭ>
• pixivϓϨϛΞϜಋೖ࣌: ϩάΠϯඞਢ • 2015: ඇϩάΠϯͰ͑ΔΑ͏ʹͳΔ • ৽نϢʔβ͕োนͳ͘ΞϓϦΛ͍࢝ΊΒΕΔ • 2016:
ԾΞΧϯτొಋೖɾϩάΠϯඞਢԽ • χοΫωʔϜͷઃఆ͕૿͑Δ͕ɺ͙͢ʹҰൠΞΧϯτͷػೳΛ͑Δ ৽نϢʔβͷϋʔυϧΛԼ͖͛ͯͨ
• pixivϓϨϛΞϜಋೖ࣌: ϩάΠϯඞਢ • 2015: ඇϩάΠϯͰ͑ΔΑ͏ʹͳΔ • ৽نϢʔβ͕োนͳ͘ΞϓϦΛ͍࢝ΊΒΕΔ • 2016:
ԾΞΧϯτొಋೖɾϩάΠϯඞਢԽ • χοΫωʔϜͷઃఆ͕૿͑Δ͕ɺ͙͢ʹҰൠΞΧϯτͷػೳΛ͑Δ ৽نϢʔβͷϋʔυϧΛԼ͖͛ͯͨ
ϩάΠϯඞਢഇࢭͷ࣮࣌ pixivʹϩάΠϯ͍ͯ͠ͳ͍߹ɺ ϓϨϛΞϜొͰ͖ͳ͍͍ͯ͘ΑͶʁ
ϩάΠϯඞਢഇࢭͷ৹ࠪϨϏϡʔ ʮpixivʹϩάΠϯ͍ͯ͠ͳͯ͘ ࣗಈߋ৽ߪಡܕ՝ۚΛ ߪೖͰ͖ΔΑ͏ʹ͖ͩ͢ΑͶʯ
App • ϓϨϛΞϜొ • ϓϨϛΞϜ෮ݩ • ϦτϥΠ Server
• Ϩγʔτݕূ • ϓϨϛΞϜঢ়ଶɾϨγʔτظ ݶཧ
App Server • Ϩγʔτݕূ • ϓϨϛΞϜঢ়ଶɾϨγʔτظ ݶཧ •
ϓϨϛΞϜొ • ϓϨϛΞϜ෮ݩ • ϦτϥΠ • (ඇϩάΠϯ࣌)ϓϨϛΞϜঢ় ଶɾϨγʔτظݶཧ
• ϨγʔτݕূαʔόଆʹͤΔ • ϓϨϛΞϜొ࣌ʹϨγʔτͷݕূ͠ɺϨγʔτظݶΛϩʔΧϧʹه • ʮϨγʔτͷఆظߋ৽ʯΛड͚औΓɺϩʔΧϧͷϨγʔτظݶΛߋ৽͢Δ • ʮϨγʔτͷఆظߋ৽ʯͷड͚औΓ: SKPaymentTransactionObserver
ϓϨϛΞϜঢ়ଶɾϨγʔτظݶཧ αʔόͱΞϓϦͷͦΕͧΕͰظݶΛཧ͍ͯͯ͠ͳ͔ͳ͔ා͍
ϓϨϛΞϜঢ়ଶɾϨγʔτظݶཧ ݱࡏԾΞΧϯτొʹରԠ͠ɺ ϩάΠϯඞਢͳͷͰϦϑΝΫλϦϯάத • ϨγʔτݕূαʔόଆʹͤΔ • ϓϨϛΞϜొ࣌ʹϨγʔτͷݕূ͠ɺϨγʔτظݶΛϩʔΧϧʹه •
ʮϨγʔτͷఆظߋ৽ʯΛड͚औΓɺϩʔΧϧͷϨγʔτظݶΛߋ৽͢Δ • ʮϨγʔτͷఆظߋ৽ʯͷड͚औΓ: SKPaymentTransactionObserver
• ϓϨϛΞϜొը໘༷ʑͳཁҼͰมಈ͢Δ • Auto-renewable subscriptionsͷϨϏϡʔΨοπϦߦΘΕΔ • AppStoreͷՁ֨มߋ • ՝ۚΞΠςϜͷҠߦ •
৽ػೳ࣮ʹ͏Өڹ<ϩάΠϯඞਢഇࢭ> ૺ۰ͨ͠·ͱΊ
͜ΕΒͷݟ͕ ଟ͘ͷϓϨϛΞϜͳػೳͷ ʹཱͯΕͱࢥ͍·͢
ϓϨϛΞϜͳମݧʹ ͋ΒΜ͜ͱΛ
Fin.