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
2.1k
Auto-Renewable Subscriptionsを5年間運用した歴史から学ぶ注意点
iOSDC2018で発表した内容です
yuutetu
September 01, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
abema-trace-sampling-observability-cost-optimization
tetsuya28
0
440
様々なファイルシステム
sat
PRO
0
290
オブザーバビリティと育てた ID管理・認証認可基盤の歩み / The Journey of an ID Management, Authentication, and Authorization Platform Nurtured with Observability
kaminashi
2
1.6k
AWSが好きすぎて、41歳でエンジニアになり、AAIを経由してAWSパートナー企業に入った話
yama3133
2
220
今のコンピュータ、AI にも Web にも 向いていないので 作り直そう!!
piacerex
0
390
AWS DMS で SQL Server を移行してみた/aws-dms-sql-server-migration
emiki
0
280
kotlin-lsp の開発開始に触発されて、Emacs で Kotlin 開発に挑戦した記録 / kotlin‑lsp as a Catalyst: My Journey to Kotlin Development in Emacs
nabeo
2
250
Open Table Format (OTF) が必要になった背景とその機能 (2025.10.28)
simosako
3
600
CLIPでマルチモーダル画像検索 →とても良い
wm3
2
760
設計に疎いエンジニアでも始めやすいアーキテクチャドキュメント
phaya72
24
16k
re:Invent 2025の見どころと便利アイテムをご紹介 / Highlights and Useful Items for re:Invent 2025
yuj1osm
0
610
Okta Identity Governanceで実現する最小権限の原則
demaecan
0
240
Featured
See All Featured
BBQ
matthewcrist
89
9.9k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Unsuck your backbone
ammeep
671
58k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
A Tale of Four Properties
chriscoyier
161
23k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Bash Introduction
62gerente
615
210k
The Pragmatic Product Professional
lauravandoore
36
7k
Product Roadmaps are Hard
iamctodd
PRO
55
11k
Documentation Writing (for coders)
carmenintech
76
5.1k
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.