Submit Search
iOS13 SDK による 全機能置き換え Part1
Download as PPTX, PDF
0 likes
144 views
Kaname Noto
iPhoneDevSap 9/2019 SwiftUI @notoroid
Technology
Read more
1 of 35
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
More Related Content
PPTX
最新UIフレームワーク Onsen UI2でカッコイイWordPress連携アプリを作る方法
アシアル株式会社
PPTX
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
Hiroyuki Kusu
PPTX
Voice interaction api for android m
Atsuko Fukui
PPTX
ionic - cross platform mobile app 開発
Seunghun Lee
PDF
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
アシアル株式会社
PDF
スキスキIonic
Kon Yuichi
PDF
App extension for iOS
toyship
PDF
Directiveで実現できたこと
Kon Yuichi
最新UIフレームワーク Onsen UI2でカッコイイWordPress連携アプリを作る方法
アシアル株式会社
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
Hiroyuki Kusu
Voice interaction api for android m
Atsuko Fukui
ionic - cross platform mobile app 開発
Seunghun Lee
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
アシアル株式会社
スキスキIonic
Kon Yuichi
App extension for iOS
toyship
Directiveで実現できたこと
Kon Yuichi
What's hot
(19)
PDF
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
Kazuaki Hidaka
PDF
jQuery Mobile で作る" 実用" スマフォアプリ
Takashi Okamoto
PPTX
【ABC2014Spring LT】AngularJSでWEBアプリ開発
Hiroyuki Kusu
PDF
エンタープライヤーのためのWeb Componentsハンズオン
Mitsuru Ogawa
PDF
App Extensions in iOS ver JP
qohj
PDF
Visual studio 2019 updates pickup!
一希 大田
PPTX
Hello, React!! まで導く Reactの基礎
iPride Co., Ltd.
PDF
Prott for iOS
Seiya Shimokawa
PDF
iPhoneアプリのUIデザイン - NoteCubeの場合
Daigo Wakabayashi
PPTX
Azure Mobile ServicesとAzure Mobile Apps
Masaki Yamamoto
PDF
スマートスピーカーのバックエンドでAzure を使う方法
一希 大田
PPTX
smartFXにおけるApache Cordovaの活用について
剛志 森田
PDF
エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発
日本Cordovaユーザー会
PPTX
ACI Stateful APP 作ってみた
yushimaz
PPTX
CordovaでAngularJSアプリ開発
アシアル株式会社
PDF
はじめてのiOSアプリ開発 ①
Nagamine Hiromasa
PDF
20120316 designerworkshoppublished
Yoichiro Sakurai
PDF
Potatotips3 hoshi gaki_akira_iwaya
Akira Iwaya
PDF
iOS 8 App Extension
Takeo Nanba
ネイティブとHTML5を スマートに連携させる設計と 実装のノウハウについて
Kazuaki Hidaka
jQuery Mobile で作る" 実用" スマフォアプリ
Takashi Okamoto
【ABC2014Spring LT】AngularJSでWEBアプリ開発
Hiroyuki Kusu
エンタープライヤーのためのWeb Componentsハンズオン
Mitsuru Ogawa
App Extensions in iOS ver JP
qohj
Visual studio 2019 updates pickup!
一希 大田
Hello, React!! まで導く Reactの基礎
iPride Co., Ltd.
Prott for iOS
Seiya Shimokawa
iPhoneアプリのUIデザイン - NoteCubeの場合
Daigo Wakabayashi
Azure Mobile ServicesとAzure Mobile Apps
Masaki Yamamoto
スマートスピーカーのバックエンドでAzure を使う方法
一希 大田
smartFXにおけるApache Cordovaの活用について
剛志 森田
エンタープライズ・モバイルアプリにおける ハイブリッドアプリ開発
日本Cordovaユーザー会
ACI Stateful APP 作ってみた
yushimaz
CordovaでAngularJSアプリ開発
アシアル株式会社
はじめてのiOSアプリ開発 ①
Nagamine Hiromasa
20120316 designerworkshoppublished
Yoichiro Sakurai
Potatotips3 hoshi gaki_akira_iwaya
Akira Iwaya
iOS 8 App Extension
Takeo Nanba
Ad
Similar to iOS13 SDK による 全機能置き換え Part1
(7)
PDF
SwiftUIについての所感
RenUchiyama
PDF
SnapshotとRunscript
harumidiv
PPTX
iPhoneアプリ開発の歩き方〜Swift編〜
Yusuke SAITO
PDF
SwiftとReactNativeで似たようなUIを作った際の記録
Fumiya Sakai
PDF
Storyboard
Hidetoshi Mori
PDF
iOS 8/Swift 概要 #ios8yahoo
Hiramatsu Ryosuke
PDF
IBDesignable / IBInspectable で UIプロトタイピンガブル
Masaki Oshikawa
SwiftUIについての所感
RenUchiyama
SnapshotとRunscript
harumidiv
iPhoneアプリ開発の歩き方〜Swift編〜
Yusuke SAITO
SwiftとReactNativeで似たようなUIを作った際の記録
Fumiya Sakai
Storyboard
Hidetoshi Mori
iOS 8/Swift 概要 #ios8yahoo
Hiramatsu Ryosuke
IBDesignable / IBInspectable で UIプロトタイピンガブル
Masaki Oshikawa
Ad
More from Kaname Noto
(6)
PDF
SwiftUIのライブコーディングするとxcodeが◯回落ちる
Kaname Noto
PDF
Photos vs Assets Library - いまさら始めるPhotos.framework
Kaname Noto
PDF
Firebase 概要
Kaname Noto
PDF
明日のためのBaaS - BaaS for tomorrow
Kaname Noto
PDF
iOS グラフィックス Tips
Kaname Noto
PDF
Core Data バッドプラクティス
Kaname Noto
SwiftUIのライブコーディングするとxcodeが◯回落ちる
Kaname Noto
Photos vs Assets Library - いまさら始めるPhotos.framework
Kaname Noto
Firebase 概要
Kaname Noto
明日のためのBaaS - BaaS for tomorrow
Kaname Noto
iOS グラフィックス Tips
Kaname Noto
Core Data バッドプラクティス
Kaname Noto
iOS13 SDK による 全機能置き換え Part1
1.
iOS13 SDK による 全機能置き換え Part.1
SwiftUI 編
2.
自己紹介
3.
能登 要 (@notoroid) •
iOSアプリ開発者 • 屋号:いります電算企画 • @notoroid • @irimasu • eスポーツ
4.
題目 • レガシーアプリの刷新 • SwiftUIを動かしてみる •
まとめ
5.
話す範囲 • SwiftUI Tutorials •
https://developer.apple.com/tutorials/swiftui/tutorials • Creating and Combining Views • Building Lists and Navigation • Handling User Input • Composing Complex Interfaces • Working with UI Controls
6.
話さない範囲 • 既存UI との組み合わせ •
アニメーション • OSごとへのSwiftUI の適用
7.
次回以降で話す内容 • Combine framework •
KeyPath (Swift5.1) • @dynamicMemberLookup
8.
https://github.com/notoroid/Swift UIBatteryMonitor 資料
9.
レガシーアプリの刷新
10.
iOS13 リリース
11.
iOS13に合わせて 既存アプリを刷新中
13.
GloriousBattery (グロリアスバッテリー) • バッテリーモニター(ユーティリティー) •
最大4台(実機1+リモート3台) • 手持ちのiPhoneからiPadなどの機器のバッ テリー状態確認可能 • 自宅にあるiPhoneのバッテリー状態確認可 能
14.
バージョン1は技術デモ • 1) バッテリー情報(実機、リモート)の表示 •
2) バッテリー状態の送信 • 2) リモート先バッテリー状態の受信 • 4) 招待QRコードの生成と表示 • 5) 招待QRコードの読み取り(リモート先と接続) • 6) 色テーマの選択 • 7) バックグラウンド動作(バッテリー情報の送受信) • 8) バッテリーログの記録 • 9) バッテリーログに基づいた履歴の表示 • 10) バッテリー低下時の通知機能 • 11) 非消費型アプリ内課金の実装 • 12) ローカライズ機能 • Firebase(現在のFirebase RealtimeDatabase) の技術デモ • CoreImage(QRCode) • InAppPurchase(非消費型アプリ内課金) • バックグラウンド更新 • ローカライズ
15.
バージョン2はレガシー化 部分の差し替えに挑戦
16.
何がレガシー化したの? • 使用言語 Objective-C •
最新の開発手法とは縁遠くなりがち(Swift向けが多い) • iOS13 SDKよりはるか以前の開発手法が残っていた • バックグラウンド処理(リモート通知以外のBackGround Fetch) • バックエンドサーバー (ParseServer)
17.
iOS13 SDK で必要な対応 •
バックグラウンド動作(バッテリー情報の送受信) • RemoteNotification + Background Fetch • iOS7からのBackground Fetchはリモート通知以外deprecated. • アプリ内イメージの置き換え • アプリ内で自作したイメージリソースをSF Symbolsに置き換え
18.
SF Symbols
19.
Objective-C からSwift変更に 合わせてSwiftUI を全面適用
20.
SwiftUI 全面適用すると 開発手法の大転換になるので 技術的な棚卸しにちょうど良い
21.
もちろん勝算もあり〼
23.
4セルSafeAreaまで 塗りつぶし
25.
バッテリー量 単位 時間毎グラフ 充電状態 端末名 円グラデーション
26.
ユーティリティーアプリだからSwiftU Iを適用できる • メイン画面と設定画面 •
画面構成が少ない • ビジュアルを前面に押し出したメイン画面 • 置き換えが用意そうな簡素な設定画面 • ジェスチャーに対応している • SwiftUI でジェスチャーはサポート
27.
挑戦した結果
28.
バージョン1の80%実現
29.
バージョン1機能の80%実現済 残りはアプリ内課金と、ローカライズ
30.
SwiftUIを動かしてみる
31.
https://github.com/notoroid/Swift UIBatteryMonitor 資料
32.
サンプル • SwiftUIBatteryMonitor/StartingPoint が開始時点 •
Step1、Step2 が中間ステップ • SwiftUIBatteryMonitor/Complete が完成
33.
データ連動のためのキーワード • ObservableObject/@Published • SwiftUI
側へ情報をPublishするための定義セット • .environmentObject()/@EnvironmentObject • SwiftUI全体で有効な環境オブジェクトの設定 • @State / @Binding
34.
画面構成のキーワード • ForEach • VStack,HStack,ZStack •
List
35.
まとめ • iOS13 に合わせてレガシーなアプリを刷新中です •
iOS13 SDKで示された開発手法に合わせます • SwiftUIは前提知識持ち開発者も初心者もだいたいドツボにハマります • SwiftUIを使うとコンパイラが悲鳴をあげます
Download