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
Rollout.ioでSwiftアプリの不具合を修正してみよう
Search
hmhv
December 14, 2016
Technology
0
840
Rollout.ioでSwiftアプリの不具合を修正してみよう
hmhv
December 14, 2016
Tweet
Share
Other Decks in Technology
See All in Technology
メモ整理が苦手な者による頑張らないObsidian活用術
optim
0
150
claude codeでPrompt Engineering
iori0311
0
530
CSPヘッダー導入で実現するWebサイトの多層防御:今すぐ試せる設定例と運用知見
llamakko
1
260
データエンジニアがクラシルでやりたいことの現在地
gappy50
3
660
モバイルゲームの開発を支える基盤の歩み ~再現性のある開発ラインを量産する秘訣~
qualiarts
0
610
「手を動かした者だけが世界を変える」ソフトウェア開発だけではない開発者人生
onishi
15
7.6k
怖くない!GritQLでBiomeプラグインを作ろうよ
pal4de
1
140
増え続ける脆弱性に立ち向かう: 事前対策と優先度づけによる 持続可能な脆弱性管理 / Confronting the Rise of Vulnerabilities: Sustainable Management Through Proactive Measures and Prioritization
nttcom
1
210
生成AIによる情報システムへのインパクト
taka_aki
1
200
地域コミュニティへの「感謝」と「恩返し」 / 20250726jawsug-tochigi
kasacchiful
0
100
大規模組織にAIエージェントを迅速に導入するためのセキュリティの勘所 / AI agents for large-scale organizations
i35_267
6
330
MCPに潜むセキュリティリスクを考えてみる
milix_m
1
870
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.5k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
Building Applications with DynamoDB
mza
95
6.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Building Adaptive Systems
keathley
43
2.7k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Rails Girls Zürich Keynote
gr2m
95
14k
Code Review Best Practice
trishagee
69
19k
A Tale of Four Properties
chriscoyier
160
23k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
Transcript
Rollout.ioでSwiftアプリの不具合を修正してみよう Gunosy Inc. 2016.12
2 ©Gunosy Inc. 株式会社Gunosy – 「情報を世界中の⼈に最適に届ける」 Gunosyは 情報キュレーションサービス「グノシー」と 2016年6⽉1⽇にKDDI株式会社と共同でリリースした 無料ニュース配信アプリ「ニュースパス」を提供する
会社です。「情報を世界中の⼈に最適に届ける」を ビジョンに活動しています。 ネット上に存在するさまざまな情報を、 独⾃のアルゴリズムで収集、評価付けを⾏い ユーザーに届けます。 情報キュレーションサービス 「グノシー」 300媒体以上のニュースソースをベースに、 新たに開発した情報解析・配信技術を⽤いて⾃動的に 選定したニュースや情報をユーザーに届けます。 無料ニュース配信アプリ 「ニュースパス」
3 ©Gunosy Inc. Agenda ・Rollout.ioの概要 ・デモ ・Swiftアプリで利⽤時の注意点
4 ©Gunosy Inc. Rollout.ioの概要
5 ©Gunosy Inc. Rollout.ioとは ネイティヴiOSアプリを申請を通さず不具合の修正などが⾏えるツール 対応⾔語 ▪Objective-C ▪Swift 2016年11⽉~
6 ©Gunosy Inc. Rollout.io 利⽤の流れ 1. Rollout.ioのダッシュボードでアプリを追加 2. SDKの導⼊(Cocoapods⼜はインストーラ) 3.
ビルドで前処理 不具合発⽣ 4. Rollout.ioのダッシュボードでパッチを作成 5. アプリがフォアグラウンドになるとパッチをダウンロードして適⽤
7 ©Gunosy Inc. Rollout.io 利⽤の流れ 1. Rollout.ioのダッシュボードでアプリを追加
8 ©Gunosy Inc. Rollout.io 利⽤の流れ 2. SDKの導⼊(Cocoapods⼜はインストーラ)
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 ©Gunosy Inc. Rollout.io 利⽤の流れ 4. Rollout.ioのダッシュボードでパッチを作成 パッチはメソッド単位でjavascriptで作成 (*Swiftアプリはテンプレートでのパッチ作成は不可)
11 ©Gunosy Inc. Rollout.io 利⽤の流れ 5. アプリがフォアグラウンドになるとパッチをダウンロードして適⽤ ▪ パッチのダウンロードは⾮同期 ▪
パッチ(javascript)はJavaScriptCore.frameworkによって実⾏ ▪ SwiftではPseudo Method Swizzling で適⽤ ▪ Objective-Cでは Method Swizzling で適⽤ https://rollout.io/how-it-works/
12 ©Gunosy Inc. デモ
13 ©Gunosy Inc. デモ内容 1. Rollout.ioのダッシュボードでアプリを追加 2. SDKの導⼊(Cocoapods⼜はインストーラ) 3.ビルドで前処理 不具合発⽣
4. Rollout.ioのダッシュボードでパッチを作成 5. アプリがフォアグラウンドになるとパッチをダウンロードして適⽤
14 ©Gunosy Inc. Swiftアプリで利⽤時の注意点
15 ©Gunosy Inc. Swiftアプリで利⽤時の注意点 ▪ Swift対応はまだ進⾏中 Swift Supportで確認(http://support.rollout.io/docs/swift-coverage) ▪ 無料プラン(LITE)ではSwiftアプリのパッチ作成が不可
有料プランはpricingで確認(https://rollout.io/pricing/) ▪ 使いすぎに注意 あくまで不具合修正⽤であって申請時になかった機能追加などはダメ
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 ©Gunosy Inc. 新しいアーキテクチャに⼀緒に挑戦する 仲間を募集しています!! ご静聴ありがとうございました