Rollout.ioでSwiftアプリの不具合を修正してみよう

D82164010a31cc05c070c9ca05889445?s=47 hmhv
December 14, 2016

 Rollout.ioでSwiftアプリの不具合を修正してみよう

D82164010a31cc05c070c9ca05889445?s=128

hmhv

December 14, 2016
Tweet

Transcript

  1. Rollout.ioでSwiftアプリの不具合を修正してみよう Gunosy Inc. 2016.12

  2. 2 ©Gunosy Inc. 株式会社Gunosy – 「情報を世界中の⼈に最適に届ける」 Gunosyは 情報キュレーションサービス「グノシー」と 2016年6⽉1⽇にKDDI株式会社と共同でリリースした 無料ニュース配信アプリ「ニュースパス」を提供する

    会社です。「情報を世界中の⼈に最適に届ける」を ビジョンに活動しています。 ネット上に存在するさまざまな情報を、 独⾃のアルゴリズムで収集、評価付けを⾏い ユーザーに届けます。 情報キュレーションサービス 「グノシー」 300媒体以上のニュースソースをベースに、 新たに開発した情報解析・配信技術を⽤いて⾃動的に 選定したニュースや情報をユーザーに届けます。 無料ニュース配信アプリ 「ニュースパス」
  3. 3 ©Gunosy Inc. Agenda ・Rollout.ioの概要 ・デモ ・Swiftアプリで利⽤時の注意点

  4. 4 ©Gunosy Inc. Rollout.ioの概要

  5. 5 ©Gunosy Inc. Rollout.ioとは ネイティヴiOSアプリを申請を通さず不具合の修正などが⾏えるツール 対応⾔語 ▪Objective-C    ▪Swift   2016年11⽉~

  6. 6 ©Gunosy Inc. Rollout.io 利⽤の流れ 1. Rollout.ioのダッシュボードでアプリを追加 2. SDKの導⼊(Cocoapods⼜はインストーラ) 3.

    ビルドで前処理 不具合発⽣ 4. Rollout.ioのダッシュボードでパッチを作成 5. アプリがフォアグラウンドになるとパッチをダウンロードして適⽤
  7. 7 ©Gunosy Inc. Rollout.io 利⽤の流れ 1.  Rollout.ioのダッシュボードでアプリを追加

  8. 8 ©Gunosy Inc. Rollout.io 利⽤の流れ 2. SDKの導⼊(Cocoapods⼜はインストーラ)

  9. 9 ©Gunosy Inc. Rollout.io 利⽤の流れ 3.ビルドで前処理 SDK導⼊によりビルド時に以下の処理が⾏われる  ▪ アプリのコードを分析して必要情報をRollout.ioへ送信  ▪

    Swiftの場合 `Pseudo Method Swizzlingʼ のためのコード変更 (Objective-Cでは Method Swizzling を利⽤) https://blog.rollout.io/swift-method-swizzling/
  10. 10 ©Gunosy Inc. Rollout.io 利⽤の流れ 4. Rollout.ioのダッシュボードでパッチを作成 パッチはメソッド単位でjavascriptで作成 (*Swiftアプリはテンプレートでのパッチ作成は不可)

  11. 11 ©Gunosy Inc. Rollout.io 利⽤の流れ 5. アプリがフォアグラウンドになるとパッチをダウンロードして適⽤  ▪ パッチのダウンロードは⾮同期  ▪

    パッチ(javascript)はJavaScriptCore.frameworkによって実⾏  ▪ SwiftではPseudo Method Swizzling で適⽤    ▪ Objective-Cでは Method Swizzling で適⽤ https://rollout.io/how-it-works/
  12. 12 ©Gunosy Inc. デモ

  13. 13 ©Gunosy Inc. デモ内容 1. Rollout.ioのダッシュボードでアプリを追加 2. SDKの導⼊(Cocoapods⼜はインストーラ) 3.ビルドで前処理 不具合発⽣

    4. Rollout.ioのダッシュボードでパッチを作成 5. アプリがフォアグラウンドになるとパッチをダウンロードして適⽤
  14. 14 ©Gunosy Inc. Swiftアプリで利⽤時の注意点

  15. 15 ©Gunosy Inc. Swiftアプリで利⽤時の注意点 ▪ Swift対応はまだ進⾏中 Swift Supportで確認(http://support.rollout.io/docs/swift-coverage) ▪ 無料プラン(LITE)ではSwiftアプリのパッチ作成が不可

      有料プランはpricingで確認(https://rollout.io/pricing/) ▪ 使いすぎに注意  あくまで不具合修正⽤であって申請時になかった機能追加などはダメ
  16. 16 ©Gunosy Inc. 参考 n  rollout.io –  https://rollout.io/ n  iOSアプリの不具合を申請なしで修正しよう

    –  https://techblog.yahoo.co.jp/advent-calendar-2016/ rollout/ n  iOS アプリで審査なしでパッチを当てられる Rollout の勉強会に ⾏ってきたので紹介する –  http://qiita.com/chiepomme/items/ 0b8370457389b4da2556
  17. 17 ©Gunosy Inc. 新しいアーキテクチャに⼀緒に挑戦する 仲間を募集しています!! ご静聴ありがとうございました