$30 off During Our Annual Pro Sale. View Details »

アプリの終活 〜その後〜

TatsunoriKuri
September 03, 2023

アプリの終活 〜その後〜

iOSDC Japan 2023 の LT にて発表した資料になります。
https://fortee.jp/iosdc-japan-2023/proposal/e27cabd9-2e11-4ca2-b70c-b7ddee70c4bc

TatsunoriKuri

September 03, 2023
Tweet

More Decks by TatsunoriKuri

Other Decks in Technology

Transcript

  1. © GO Inc.
    アプリの終活
    〜その後〜
    2023.09.03 iOSDC Japan 2023 LT
    ユーザーシステム1グループ / 久利 龍義
    GO株式会社

    View Slide

  2. © GO Inc. 2
    アプリの終活とは?
    https://fortee.jp/iosdc-japan-2021/proposal/a77ea2d7-283d-433d-a201-3867c8f6a01d

    View Slide

  3. © GO Inc. 3
    会社統合によるサービス終了

    View Slide

  4. © GO Inc. 4
    会社統合によるサービス終了

    View Slide

  5. © GO Inc. 5
    会社統合によるサービス終了

    View Slide

  6. © GO Inc. 6
    サービス終了に向けた活動

    View Slide

  7. © GO Inc. 7
    サービス終了に向けた活動

    View Slide

  8. © GO Inc. 8
    終活から約1年半後の
    2023.01.31

    View Slide

  9. © GO Inc. 9
    サービス終了

    View Slide

  10. © GO Inc.
    ● アカウント登録機能の削除⛔
    ○ 強制アップデートの実施
    ● 強制アップデート機能でクラッシュする問題の解消💥
    ○ ほとんど運用することのなかった機能でクラッシュ
    ■ 端末の言語設定が日本語以外のケースで発生
    ● 「JapanTaxi Wallet」機能の停止⛔
    ○ 流しのタクシーに乗車した際に2次元バーコードを読み込み支払う
    機能
    ○ URL Scheme, クイックアクションからの遷移も削除
    ○ 強制アップデートの実施
    10
    終活後 〜 サービス終了までの対応

    View Slide

  11. © GO Inc. 11
    サービス終了時

    View Slide

  12. © GO Inc.
    ● サービス終了画面の表示
    ○ アプリ起動時にサービス終了したことをお知らせする表示
    ○ 起動時の無駄な API 通信を削除
    12
    サービス終了後の対応

    View Slide

  13. © GO Inc. 13
    これが最後のリリース

    View Slide

  14. © GO Inc. 14
    リジェクト

    View Slide

  15. © GO Inc.
    ● App Review > あなたのアプリに1つ以上のバグを発見しました。具体的には、アプリ
    内の他のコンテンツや機能にアクセスできませんでした。
    ● レビューワーに今回の対応内容を説明
    ○ 『GO』 への移行を続けてきたが、『JapanTaxi』アプリユーザーへの最後のコミュ
    ニケーションとしてこのリリースを行いたい旨
    ○ コンテンツ不足によるリジェクトのリスクがあることは承知しつつ、利用できない機
    能を提供し続けることは品質を損なうことになると説明
    ● App Review > ユーザーを新しいアプリに移行させたいとお考えなのは理解できます
    が、現在のアプリは App Store で利用できる限り、ある程度の機能を提供し続ける必要が
    あります。
    15
    Guideline 2.1 - Performance - App Completeness

    View Slide

  16. © GO Inc. 16
    最後のリリースできず

    View Slide

  17. © GO Inc.
    ● メンテナンス状態を外部ストレージに置かれた JSON ファイ
    ルから取得
    ○ { “maintenance”: “true”, “url”: “https://xxxx.xxx” }
    ● メンテナンスの場合、全画面にモーダルを表示
    ● 汎用的に使えるように中身は WebView で表示
    ○ 汎用的な設計のおかげでサービス終了のアナウンスとして使えた
    17
    メンテナンス機能を流用したサービス終了のお知らせ表示

    View Slide

  18. © GO Inc. 18
    ● お知らせ表示対応の1ヶ月後に App Store での配信停止
    ○ 念の為、削除前に状況を確認する期間
    ○ 配信する国を全てオフ
    ● さらに1ヶ月後に App Store から削除
    ○ (一応削除後も戻せるみたいですが怖くて試してはない)
    ● 定期実行していた CI の停止
    ● 不要になった Provisioning Profile の削除
    ■ App, Siri, SiriExtension の3つが 3環境 x 3 Build Scheme で 合計27個あった
    サービス終了後、その他の対応

    View Slide

  19. © GO Inc. 19
    App Store から削除の瞬間はみんなでワイワイ見守りながら実施

    View Slide

  20. © GO Inc.
    ● ちょっとした作業の自動化
    ○ 特にリリースに関わる作業を自動化したことにより、数は少ないがいつでも誰でもリ
    リース作業をすることができた
    20
    やってよかった終活①
    Slack へのコマンド1つでリリース関連の作業が完結

    View Slide

  21. © GO Inc.
    ● クローズに向けた機能の構築
    ○ KARTE によるお知らせの出し分けと、汎用的な注文停止機能を構築。順次サービス
    提供エリアを縮小していく中で都度エンジニアの対応なしでサービス終了が可能に
    21
    やってよかった終活②

    View Slide

  22. © GO Inc.
    ● Provisioning Profile 更新の簡略化
    ○ もう更新することないかも?と思っていたが結果2回作業が発生
    ■ 開発作業が発生した際に発覚するので意外に時間が取られる
    ○ 27個の Provisioning Profile を更新し CI にも反映
    ● 簡略化の手段
    ○ fastlane match
    ■ 証明書をストレージに保存し管理を楽にしてくれる falstlane の機能
    ■ 『GO』 アプリの方では利用中
    ■ https://docs.fastlane.tools/actions/match/
    22
    やっておけばよかった終活

    View Slide

  23. © GO Inc. 23

    View Slide

  24. © GO Inc. 24
    お知らせ

    View Slide

  25. © GO Inc. 25
    後夜祭 iOSDC Japan 2023 のご参加お待ちしています
    2023年09月26日 19:00 ~ 20:30
    https://hey.connpass.com/event/290854/

    View Slide

  26. © GO Inc. 26
    タクシーアプリ『GO』の開発を一緒にしませんか
    https://hrmos.co/pages/
    goinc/jobs

    View Slide

  27. © GO Inc. 27
    自己紹介
    GO株式会社
    ユーザーシステム1グループ / 久利 龍義
    ● 経歴
    ○ JapanTaxi (2018年9月 - 2020年3月)
    ○ GO Inc., Mobility Technologies (2020年4月 - )
    ● 趣味
    ○ ⚽サッカー、フットサル
    ○ ⛺キャンプ
    @kuritatu18

    View Slide

  28. 文章・画像等の内容の無断転載及び複製等の行為はご遠慮ください。
    © GO Inc.

    View Slide