Upgrade to Pro — share decks privately, control downloads, hide ads and more …

リーダーアプリに外部課金リンクを設置する

Go Takagi
December 22, 2022

 リーダーアプリに外部課金リンクを設置する

potatotips #80

Go Takagi

December 22, 2022
Tweet

More Decks by Go Takagi

Other Decks in Technology

Transcript

  1. Me ( Go Takagi ) ‣ID ( GitHub / Twitter

    ) • shimastripe / shimastriper ‣Work • 株式会社 ⽇本経済新聞社 ‣ iOS 紙⾯ビューアーアプリ の開発を担当 ‣Like • Swift / ⾃動化 / 柴⽝ 2 電⼦版広報⽝デンシバ
  2. ちなみにシールド以外にも様々な制約が...... ‣In App Purchase と共存不可 ‣外部リンク (URL) はアプリ内で1つのみ • ボタンにわかりやすく明⽰する

    ‣リダイレクト‧クエリパラメータ使⽤禁⽌ • トラッキング‧コンバージョンのテストはできない ‣サービス内容(商品)や価格の表⽰禁⽌ • 外部サイトへの遷移明⽰しかできない ‣ルールが更新された場合30⽇以内にアプリ側は対応必須 ‣etc... 9
  3. 外部リンクアカウントエンタイトルメントの申請 ‣フォームから申請 • この URL は Account Holder からしか開けないのに注意 ‣チェック項⽬に回答

    (2022年7⽉27⽇時点の例を残しておきます) • Is the primary functionality of your app to o ff er one or more of the following: magazines, newspapers, books, audio, music, or video? • Does your app allow people to sign in to an account? • Can people access content or services purchased outside of your app (e.g., on your website) by signing in to your app? • Are your appʼs content and services digital only? • Do the content and services accessed in your app facilitate real-time, person-to- person services (e.g., providing tutoring services, medical consultations, real estate tours, or fi tness training)? • Does your app o ff er in-app purchases? • Have you submitted your app for review? ‣App Info を記載 • Bundle Id と AppStore or Test fl ight URL • これは未公開アプリの限定公開 Test fl ight URL で申請しても有効 1 2 https://developer.apple.com/contact/request/external-link-account
  4. 仕様通りのシールドを作る 😇 (deprecated) ‣Font / Padding / Size / SystemColor

    が全て指定 • iPhone / iPad の仕様差もある...... (SplitView は指定されてない) 1 5 https://developer.apple.com/support/downloads/Reader_App_Modal_Speci fi cations.zip
  5. iOS 1 6 から API が追加 + 変更 ‣ExternalLink API

    が登場 • これまでは StoreKit の既存の API で実現していた • iOS 1 6 からはこれを使ってね ^ ^ メールが来る • https://developer.apple.com/documentation/storekit/ external_link_account • シールドも SDK が⽤意してくれるように!! • ただ async function なので Concurrency に対応する必要あり 1 7
  6. 五⽉⾬ Tips ‣外部リンクの更新はできる? • 1バージョン毎に変えれる • 動的な変更はできない、リダイレクトも不可 • ボタンに表⽰するため、シンプルなURLを⽤意したほうが美しい ‣シールドのイベント計測は...?

    • iOS 1 6 未満は⾃前実装だからできるけど、16 からはSDKが⽤意するから不可 ‣Entitlementsが増えるため、Devに影響 • Test fl ight に別 BundleId であげるユースケースがある場合 
 そちらにも Entitlements が必要になる 1 9
  7. まとめ ‣リーダーアプリ外部サイトリンクがつけられるようになった • iOS 1 6 からはとても楽 • ⼀度対応してから、後に In

    App Purchase に変えることもできそう ‣事前予想以上の購読者を獲得。今後も継続して設置予定 • シールド経由 + トラッキングできないため、劇的な期待はできない • 貢献している数字は取れている、チューニングは難しい 2 0