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

iOS, Androidアプリを譲渡した話 / Story about transferring iOS and Android application

8924d254fe8a39021d3822b5d51b6fec?s=47 wiroha
August 06, 2017

iOS, Androidアプリを譲渡した話 / Story about transferring iOS and Android application

2017-08-06(日) Java女子部【東京】【女性限定】言語不問!浴衣でビールクズミニセッション大会#javajo https://javajo.doorkeeper.jp/events/63154 での発表資料です

8924d254fe8a39021d3822b5d51b6fec?s=128

wiroha

August 06, 2017
Tweet

Transcript

  1. iOS/Android アプリを 譲渡した話 2017/8/6 @wiroha

  2. 自己紹介 • @wiroha • Android好き、DroidKaigiスタッフ • SIer→Perlエンジニア→現職 • 今はPO, CTO,

    ディレクター, プランナー, CS, 広報,エンジニアなど何でも屋さん
  3. 譲渡の話をしようと思った理由

  4. 情報が少ない & 聞ける人がいない で困ったから

  5. 情報が少ない • iOS/Android 公式ドキュメントが完璧ではない ◦ 日本語版を読んでいたら、最新の英語版が存在した ◦ 不明点が多々ある ◦ 不明点を問い合わせても答えてくれない

    • ググっても情報が少ない ◦ やる人が稀 ◦ やっても公開する人が稀 ◦ 古い情報だと変わっていることも
  6. 聞ける人がいない • 誰がやったことあるかわからない • M&Aは機密事項のためSNSで「やったことある人ー!」と聞く ことも出来ない

  7. 私、やりました! • 今後皆さまやその周りの人が譲渡する際、 wirohaがやってた!と思い出してもらえれば目的達成 • 知見blogも書きましたが、書きづらいことも多いのでこっそり聞 いてほしい

  8. アプリの譲渡とは?

  9. アプリの譲渡とは? • アプリ管理権限を他のdeveloperへ 渡すこと • iOSでは「譲渡」, Androidでは「移行」 • 2013年より可能に。 •

    BundleIDやpackagenameはそのまま。 • URLスキームもそのまま。 • 今回の場合:別会社へ売却・譲渡により発生 • 分社化、別ブランド化の場合でも実施(例:Xflag)
  10. 譲渡話が出たら 絶対最初にやること

  11. 譲渡出来る条件に 適合しているか確認する

  12. 絶対最初にやること • アプリで譲渡出来る条件に適合しているか確認する ◦ 特に課金・定期購入を実装していると引っかかりやすい ◦ 条件に合うよう開発が必要になる可能性も ◦ 結構用語が難しいので、エンジニア自ら確認した方が良い! ▪

    例「App 内課金購読(自動更新、無料、非更新)の提供 (現在も過去も)はできません。」 • プロダクトの利用規約も確認 ◦ 運営主が変わる可能性に同意をとっているか?
  13. 譲渡全体の流れ

  14. 譲渡全体の流れ • 引き合い・コンペなどでお見合い • 機密保持契約を結び、情報を開示 • 条件交渉、契約書作成 • コード改修 •

    譲渡契約の締結 • アプリ移管 • 引き継ぎ 規模:4プロダクト×iOS/Android, 合計1400万DL以上    どれも☆4以上の優良アプリ
  15. 譲渡全体の流れ • 引き合い・コンペなどでお見合い • 機密保持契約を結び、情報を開示 • 条件交渉、契約書作成 • コード改修 •

    譲渡契約の締結 • アプリ移管 • 引き継ぎ 規模:4プロダクト×iOS/Android, 合計1400万DL以上    どれも☆4以上の優良アプリ
  16. 条件交渉、契約書作成 • 契約書とか、法務の仕事でしょ? • エンジニアにも影響があります! • 「瑕疵担保責任」 普通の受発注と同じ ◦ 瑕疵 (欠陥)

    があった場合,引渡し義務者が負う担保責任 • キッチリ不具合/仕様の認識合わせを! • 対応する年数、補償金額、条件などなど • 例)「譲渡する前のコードが原因で発生した不具合は、    譲渡元が修正する」といった条項   「OS側の仕様変更によるものは除く」などを追加
  17. コード改修 • 提供社名の変更、埋め込みアカウントキーの変更等 • サーバ側に持たせておくと楽 ◦ 普段から変更に強い設計にしておくべき • 改修自体より、リリースするタイミングが難しい ◦

    プレスリリース日と揃えたいなどがあると審査の都合など。。 ◦ 仕様でカバー:社名を「変更」でなく「消す」ことで、情報公開前に出せるよう対 応
  18. いよいよ移管

  19. 移管 移管先へ受諾可能通知 移管先が受諾手続き Android iOS 数時間〜 数日以内? 数日以内? 最大2営業日 移管元が移管申請

    移管元が移管申請 ストア反映 ストア反映
  20. 移管申請の注意点 • チームIDなどが必要 • iOSは移管申請出来ないステータスに注意 ◦ 審査中や公開待ちでは申請不可 • 移管前にレポートをとっておく ◦

    普段からとっておけば良かった(数字は別でとっていた)
  21. iOS移管申請できない問題

  22. iOSで移管申請できない • iTunesConnectのバグと思われる • 「App 用共有シークレット(購入者と共有する必要があります) を生成済みの場合、自動更新、無料、および非更新の登録を 含む App のみ譲渡できます。」

    • Appleに問い合わせ、手動で対応してもらった • 過去にアプリ内課金を実装し申請を通したが、未リリースのバージョンがあったか ら?
  23. やったー!移管申請できたー!

  24. 事故発生

  25. Android側で事故 • Androidが出す予定日より前に出た ◦ 勘違いと、ストア管理権限者とのコミュニケーションミスによるもの • 戻せない。ツラい。 • 大慌てでユーザ告知など対応 •

    無事…ではないが、Androidは完了
  26. iOS受諾手続き • 移管申請翌日に受諾通知 • 受諾手続きの1時間後にはストアに反映! • 早いじゃん!と思ったら4つの内、2つだけ

  27. 終わらない移管

  28. iOSの移管が終わらない 残りの2つが2営業日経っても終わらず問い合わせ 普通はすぐ終わるはずなので調査します さらに2日経つ 終わらない 問い合わせる 調査中です

  29. iOSの移管が終わらない • 4つとも終わったのは、受諾から22日後のことだった… • 最大2営業日とは何だったのか • その間、プレスリリースはいつ打つのか? 問い合わせ対応はどちらがやるのか? 契約上問題無いのか?など検討に追われる。。

  30. 移管されたら • 証明書を再設定すれば完了! • Widgetを使っている場合はAppGroupsの設定も。 ◦ 移管元で削除、移管先で再登録 ◦ これも情報少ない

  31. 大変だったこと

  32. 大変だったこと • たくさんありすぎる。アプリ移管以外が特に大変。 • 社内ライブラリどうしよう • keystoreどうしよう • 社内承認をとる資料作り •

    譲渡先とのコミュニケーション方法。文字化け、同時編集、セキュリティ • 引き渡せないサービスも。4プロダクト分、合計50サービス調査。 • 前任者から引き継げないアカウント • 取引先との連絡。要望も各社異なる • 管理用社内ツールに属人性 • 広報、ユーザ対応 • 引き継ぎ資料を作るのが大変、全員が入れ替わる、普段から仕様書最新化を • 精算
  33. やってよかった • ユーザからの反響はゼロだった ◦ 私の情報を別の会社に渡すなんて!等のクレームを想像していた ◦ 別のプロダクトをクローズしたときは電話が相次いだ • 無事嫁に出せた親の気分 ◦

    1つは入社して3年半、ずっと担当していたプロダクト
  34. まとめ

  35. まとめ • 計画を立てるのは諦めよう • 特殊案件なので経験者に聞こう • 死なないようにエンジニアも積極的に関わろう • 譲渡に限らず、普段からちゃんとしておくと楽