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
アプリ内課金 リジェクトとAppleとのやり取りのお話
Search
hayatan
December 15, 2021
Business
1
1.5k
アプリ内課金 リジェクトとAppleとのやり取りのお話
Appleと具体的なやり取り(電話とか)のお話
hayatan
December 15, 2021
Tweet
Share
More Decks by hayatan
See All by hayatan
ReactNative のアプリを Swift に置き換えてます
hayatan
0
530
Other Decks in Business
See All in Business
Ampersand Company Profile
cuebicventures
PRO
0
480
_RINGの会_令和の時代の保険募集実務とプロ代理店の対応.pdf
hakusansai
0
150
Sales Marker Culture Book(English)
salesmarker
PRO
1
3k
株式会社miibo|採用デック
natsumidnx
0
140
Amazon Q Developerの 最新アップデート情報まとめ
o2mami
0
1k
ネクストビートコーポレートガイド/corporate-guide
nextbeat
3
77k
The AI-savvy operating model - Matthew Skelton, Conflux - Agile to Agility conference
matthewskelton
PRO
2
190
Creating Creators in the age of Generative AI - In SIGGRAPH ASIA 2024
o_ob
0
120
re:Infrastructure_for the NextGen AI/ML and Beyond
ichichi
0
150
CompanyDeck_v6.pdf
xid
3
17k
Works Human Intelligence
whisaiyo
1
79k
FinOps入門×三大クラウドコスト削減術_Azureコスト削減ポイント紹介
katsura127
0
120
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
45
7k
A Tale of Four Properties
chriscoyier
157
23k
GraphQLとの向き合い方2022年版
quramy
44
13k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Six Lessons from altMBA
skipperchong
27
3.5k
Become a Pro
speakerdeck
PRO
26
5k
The Language of Interfaces
destraynor
154
24k
Into the Great Unknown - MozCon
thekraken
33
1.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Transcript
アプリ内課金 リジェクトとAppleとのやり取りのお話 2021/12/15 DMM iOS meetup #2
About me 大門 弘明(だいもん ひろあき) DMM.com のiOSエンジニア。 現在はオンラインサロン事業部に所属し、 直近だと ReactNative
→ Swift 移行や、 アプリ内課金の提供などに携わる。 趣味はゲーム、FFXIV。 最近星を救うために月に行きました。
今日お話すること • AppStoreリジェクトの経緯 ◦ アプリ内課金を実装してください!のリジェクト • わたしたちがとった対応 • Appleとどのようなやり取りを行ったのか •
コードは一切出てきません
DMMオンラインサロンアプリについて オンラインサロンに特化したクローズド SNS 機能 • テキスト・画像・動画の投稿 • 投稿に対するコメントや返信 • ライブ配信の視聴
特徴 • オンラインサロンオーナー /会員専用 • 入会手続きはWebから • 以前はアプリからは入会導線なし ◦ 最近アプリ内課金リリースで対応! 入 会 会 員 管 理 ・集 客 会員限定の交流 DMMオンライン サロンアプリ
AppStoreリジェクトの経緯
リジェクト from: Apple Guideline 3.1.1 - Business - Payments -
In-App Purchase We noticed that your app offers a subscription with a mechanism other than the in-app purchase API. アプリがアプリ内購入API以外のメカニズムで サブスクリプションを提供していることに気付きました。
Why? • 3.1.1 App内課金 ◦ 結構長い ▪ Apple以外の決済手段で課金させることは NGと解釈 •
当時誤って入会導線(Webでの課金)をつけてしまった ◦ 修正しても覆ることはなかった
わたしたちの言い分 サブスクリプション方式App内課金を導入できない & する必要はない
わたしたちの言い分 • オンラインサロンはApp外部のオフラインのサービス提供も含む ◦ オフラインイベントの参加権など ◦ ガイドライン3.1.3(e)「ユーザーがAppの外部で使用する物理的な商品やサービス」にあたるので は? • デジタルジタルデータのみで完結しないサービス
◦ オーナーや会員が、自発的かつ人為的に起こした コミュニケーションに関するアクションが対価 • 価格あたりのサービス内容が保証できない ◦ 多様な価格設定 ◦ そもそもAppleのサブスクにのせられない
レビューガイドライン3.1.3(e) 3.1.3(e)Appの外部で使用する商品やサービス:ユーザーがAppの外部で使用する物 理的な商品やサービスをAppで購入できるようにする場合、そうした商品の支払いには App内課金以外(Apple Payやクレジットカードなど)の方法を使用する必要があります。 https://developer.apple.com/jp/app-store/review/guidelines/#goods-and-services-o utside-of-the-app
一度目の対戦 このタイミングで1度目の Apple担当者との電話 (この当時はまだ自分はオンラインサロンにいない) やはりだめです。 対応して再申請してください。 フィードバックに同意できない場合があることは理解している。 しかし、だめものはだめ。 サブスクリプション方式 App内課金を導入できないし
する必要はないのでは?
Appleとの対戦結果 • DMMオンラインサロンはデジタルコンテンツであり、 リジェクトは覆らなさそう。
対応
対応策の検討 • ブラウザ版に移行する • アプリ内課金を実装する ◦ アプリ内通貨を買ってもらい支払う形式にする ◦ サブスクリプションを導入する
対応策の検討 • ブラウザ版に移行する ◦ 先にこちらから対応 • アプリ内課金を実装する ◦ 一旦保留
ブラウザ版に移行 • 万が一アプリが削除されてしまったときに備えて対応 • 一旦ブラウザ版の改修に注力 ◦ iOSでWebPushを実現するためのPush7の導入 ◦ 機能改善・UI改善等 •
このときはまだiOSエンジニアがいない
iOS課金導入・・・?
どのようにアプリ内課金を実現するか このあたりでオンラインサロンの開発にJOIN
どのようにアプリ内課金を実現するか • アプリ内課金でアプリ内通貨を買ってもらい支払う形式にする ◦ 前払式決済手段の導入 ◦ 自由な価格設定ができる ◦ 自動更新(サブスク)ができない •
アプリ内課金でサブスクリプションを導入する ◦ サロンごとに価格が違うのでサロンごとに課金アイテムを作成? ◦ 自由な価格設定ができない ◦ 課金アイテム数の上限 ◦ 課金アイテムの追加は手動 アプリ内通貨だと自動更新できないけど、 サブスクも難しそう・・・
言い分を変えてみる
レビューガイドライン3.1.3(a)「リーダー」App 以前に購入したコンテンツまたはコンテンツのサブスクリプション(具体的には、雑誌、新 聞、書籍、オーディオ、音楽、ビデオ)に、ユーザーがアクセスできるようにすることは許 可されています。「リーダー」Appは、無料ユーザー層向けにアカウント作成の機能や、 既存ユーザー向けにアカウント管理の機能を含めることができます。 ワンチャンあるのでは・・・?
Appleと二度目の対戦
Appleと二度目の対戦 だめ。 これはAppStoreには適していない。 3.1.3(a) 「リーダー」App に該当するように修正しました。
Appleと二度目の対戦 続き このコンテンツはガイドライン 3.1.3「その他の購入方法」には当てはまらない。 ガイドライン3.1.3(b)マルチプラットフォームサービスも読んでね。
レビューガイドライン3.1.3(b) 複数のプラットフォームで動作するAppでは、マルチプラットフォームのゲームにおける 消耗アイテムなどを含め、別のプラットフォーム上のAppやデベロッパのWebサイトで ユーザーが入手したコンテンツ、サブスクリプション、機能へのアクセスを許可すること が可能です。ただし、そうしたアイテムは、App内のApp内課金アイテムとしても購入可 能でなければなりません。 https://developer.apple.com/jp/app-store/review/guidelines/#multiplatform-services
Appleと二度目の対戦 続き フィードバックに同意できない場合があることは理解している。 でもだめ。 明確にリーダーAppに関する言及がないが、なにが理由か? ビジネスモデル的に Appleの課金に当てはめることが難しいのだがどうすればいい?
Appleと二度目の対戦結果 • 「リーダー」Appかどうかの追求はなし • ガイドライン3.1.3(b) ◦ 確かにWebでもアプリと同様のことはでき、マルチプラットフォームに当たりそう • Kindleなどの電子書籍アプリとの違いは? ◦
Kindleなどはマルチプラットフォームだけど課金はない ◦ おそらく「リーダー」App として審査に通っている
異議申し立て
異議申し立て フォームから異議申し立てを行うことができる https://developer.apple.com/contact/app-store/?topic=appeal
異議申し立て内容 • アプリ内課金を適応するのには課金モデルが合わず難しい • だからReaderとして該当するように機能を絞っている • それでもReaderに該当しないのはコンテンツの種類が問題なの? そして送信から2日後、 「異議申し立ての結果について話したいから電話する」 とAppleから返信が来る
電話でのやり取り
電話で話す目的 • リーダーAppに該当しない理由を聞く • 次にこちらが取るべき手段を知る
電話を受ける体制 • できれば営業時間にかけてほしい旨を返信 ◦ 対応できない日も明記 • こちらはEM(電話もってる)+ エンジニア2人 ◦ 電話がかかってきたら
Zoom越しに会話できる体制を整える • シミュレーションを完璧に ◦ Appleに聞かれそうなこと、聞きたいことをまとめる ◦ オンラインサロンのビジネスに関する説明なども 指定した時間帯で電話がかかってきた 日本語で対応してくれた
電話でのやり取り DMMオンラインサロンアプリは 3.1.1の却下となっています。 これに関してご質問・懸念点をお持ちなのですか? 3.1.3(a) 「リーダー」App に該当すると思っている。 どうしてそうならないのかを教えてほしい。 DMMオンラインサロンのビジネスモデルでは リーダーAppとして出すことはできません。
リーダーAppに該当しない理由 • 原則として有料デジタルサービスはアプリ内課金の購入が必須 • 特例として「雑誌、新聞、書籍、オーディオ、音楽、ビデオ」 をサービスの内容として提供している場合のみリーダーAppが許可されている • DMMオンラインサロンのビジネスモデルはこれに当てはまらない ガイドラインに具体的には・・・ と示されている
レビューガイドライン3.1.3(a)「リーダー」App 以前に購入したコンテンツまたはコンテンツのサブスクリプション(具体的には、雑誌、新 聞、書籍、オーディオ、音楽、ビデオ)に、ユーザーがアクセスできるようにすることは許 可されています。「リーダー」Appは、無料ユーザー層向けにアカウント作成の機能や、 既存ユーザー向けにアカウント管理の機能を含めることができます。 https://developer.apple.com/jp/app-store/review/guidelines/#reader-apps ワンチャンなかった
電話でのやり取り アプリ内課金は実現したいとも考えている。 しかし、我々のビジネスモデルでは、 AppleのAPIでサブスクリプションを実現す ることは難しいので相談したい。 結論から言うとAppStoreのアプリ内課金では、 DMMオンラインサロンのようなモデルをサポートしていない。
AppStoreで実現が難しい理由 • サブスク型のアプリ内課金が必要 • サロン毎に App Store Connect でアイテムを作成し審査に出す必要がある •
これをデベロッパー側で管理することは難易度が高い • 消耗型コンテンツとして購入させた場合期限がなくアクセスできるようにする必要が ある ◦ これに関しては、このあとかかってくる 2回目の電話でアップデート情報あり。 一体どうすれば・・・
再びAppleから電話がかかってくる
電話でのやり取り(2回目) 先程の会話に、いくつか訂正・アップデートがある。 アプリ内通貨を利用して、 時間制限のあるアイテムを販売することは可能である。 この方法を推奨する。 自動更新サブスクリプションの場合は、特に審査が厳しく、 追加されるコンテンツの量なども審査の対象となる。
アプリ内通貨について • 時間制限のあるアイテムを販売することは可能。 • この方法で販売することが自由度も高く現実的であると提案する。 • ただし、自動更新したい場合は、自動更新サブスクリプション型のApp内課金を実 装する必要がある。 ◦ 自動更新にせずユーザーに更新を促す機能を作成するのは
OK
自動更新サブスクリプションについて • 自動更新型の場合は、審査が厳しくなる。 ◦ サービスそのものがダイナミックなコンテンツ( Netflix, Hulu など毎日コンテンツが 1000件単位で追 加される)が対象。
◦ サービスの内容、コンテンツの量なども審査の対象となる。 ◦ 1日1回ブログを更新するようなコンテンツでは却下の可能性がある。 • 有料のオンラインサロンに無制限にアクセスできるような形の場合は自動更新サブ スクリプションでも審査が通る可能性が高い
2度の電話を終えて • リーダーAppには該当しない • サブスクリプションは現実的ではない • アプリ内通貨を販売することが現実的だとの提案 • 意外とちゃんと話を聞いてもらえて、答えてくれた
対ありでした!
どのようにiOS課金を実現するか • アプリ内課金でアプリ内通貨を買ってもらい支払う形式にする ◦ 前払式決済手段の導入 ◦ 自由な価格設定ができる ◦ 自動更新(サブスク)ができない ◦
Appleの担当者も推奨 • アプリ内課金でサブスクリプションを導入する ◦ サロンごとに価格が違うのでサロンごとに課金アイテムを作成? ◦ 自由な価格設定ができない ◦ 課金アイテム数の上限 ◦ 課金アイテムの追加は手動 方針が定まってきた・・・!
どのようにiOS課金を実現するか • アプリ内通貨「サロネン(SLN)」を実装 • ユーザーにはサロネンを購入してもらって、サロネンを消費して入会する • iOSから入会した場合は、自動更新されない 先日リリースしました! 開発に関する詳しいお話はまた別の機会に!
まとめ • リーダーAppとして出せるコンテンツは決まっている ◦ 特例として「雑誌、新聞、書籍、オーディオ、音楽、ビデオ」のみ • サブスクリプションは現実的ではない • 今回の場合 Apple
のおすすめはアプリ内通貨 ◦ アプリ内通貨でサブスクをするのはダメ ◦ Apple担当者は結構いい人だった • アプリ内通貨「サロネン(SLN)」をリリース