狠狠撸
Submit Search
iOS13 SDK による 全機能置き換え Part1
?
Download as PPTX, PDF
?
0 likes
?
142 views
Kaname Noto
Follow
iPhoneDevSap 9/2019 SwiftUI @notoroid
Read less
Read more
1 of 35
Download now
Download to read offline
More Related Content
iOS13 SDK による 全機能置き換え Part1
1.
iOS13 SDK による 全機能置き換え Part.1
SwiftUI 編
2.
自己绍介
3.
能登 要 (@notoroid) ?
iOSアプリ開発者 ? 屋号:いります電算企画 ? @notoroid ? @irimasu ? eスポーツ
4.
題目 ? レガシーアプリの刷新 ? 厂飞颈蹿迟鲍滨を动かしてみる ?
まとめ
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.
厂飞颈蹿迟鲍滨を动かしてみる
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