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
iOS 18 新機能対応
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
mika
November 21, 2024
420
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
iOS 18 新機能対応
mika
November 21, 2024
More Decks by mika
See All by mika
Accessibility for Swift Charts
mika1315
0
670
速習!iOS 17 Widgets 対応!
mika1315
0
480
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Accessibility Awareness
sabderemane
1
130
Claude Code のすすめ
schroneko
67
230k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
How GitHub (no longer) Works
holman
316
150k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Utilizing Notion as your number one productivity tool
mfonobong
4
320
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
410
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
130
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
840
Transcript
iOS 18 新機能対応 Nikkei Tech Talk 2024/11/21 Mika Ito, Nikkei
Inc.
⾃⼰紹介 2 • iOSDC 2024 “Accessibility for Swift Charts” で登壇しました
https://www.youtube.com/watch?v=cOwrmjGEwNs
iOS 18 のアップデート 3
iOS 18 のアップデート Apple Intelligence 4
iOS 18 のアップデート Apple Intelligence 5
iOS 18 のアップデート:カスタマイズ性の向上! 6 https://www.apple.com/jp/ios/ios-18/
⽇経電⼦版の iOS 18 新機能対応 7 コントロールに対応 ホーム画⾯の カスタマイズ対応 Widgets 追加時に⾃動的に
オプションを表⽰
コントロールに対応 8
コントロールとは? • アプリの機能に素早くアクセスできる ◦ コントロールボタン ▪ アプリのアクション実⾏や特定領域への直接遷移といった機能を割り当てられる ▪ カメラ起動など ◦
コントロールトグル ▪ 機能のオン/オフなど、状態を切り替える機能を割り当てられる ▪ ライトのオン/オフなど 9 https://www.apple.com/newsroom/2024/06/ios-18-makes-iphone-more-personal-capable-and-intelligent-than-ever/
コントロールとは? • OS の様々なセクションに配置できる ◦ コントロールセンター ◦ ロック画⾯の下部 ◦ アクションボタン(アクションボタンのある端末のみ利⽤可能)
10 https://developer.apple.com/jp/design/human-interface-guidelines/controls
⽇経電⼦版のコントロール概要 • 5つの画⾯に遷移するコントロールに対応しました! ◦ トップ ◦ 朝刊‧⼣刊 ◦ For You
◦ フォロー‧保存 ◦ ⽇経電⼦版を検索 • 移動中や予定の合間に素早くニュースを チェックしたい⽅におすすめ 11
どこからでも⽇経電⼦版が起動できる、最強⽇経スマホが完成!💪💥 ⽇経電⼦版のコントロール概要 12
コントロールの実装 • WWDC2024 “Extend your app’s controls across the system”
を確認 • WidgetKit を⽤いて作成される ◦ Widgets の作成⽅法を知っていれば、コントロールも同じように作成できる ◦ 既存の WidgetExtension に追加できる • ボタンとトグルの⼆種類 ◦ ControlWidgetButton ◦ ControlWidgetToggle 13 https://developer.apple.com/videos/play/wwdc2024/10157/
コントロールの実装 • ControlConfiguration は⼆種類 ◦ StaticControlConfiguration : 構成不可能 ◦ AppIntentControlConfiguration:
構成可能(プロパティが選べる) • AppIntent を使ってアクションを実⾏する ◦ AppIntent を試す、良いチャンス! 14 https://developer.apple.com/videos/play/wwdc2024/10157/
コントロールの実装 - デザイン - • コントロールは置ける要素が決まっている • アイコン ◦ アイコンは
Widgets の機能を直感的に理解できるものが望ましい ◦ 標準の SF Symbols またはカスタムシンボルに限られる ◦ もし独⾃のロゴやアイコンを使⽤したい場合は、カスタムシンボルを準備する必要がある 15 https://developer.apple.com/jp/design/human-interface-guidelines/controls
コントロールの実装 - AppIntent - ⽇経電⼦版のコントロールは、アプリの特定の画⾯を開く機能 • AppIntent のターゲットには本体アプリを含める • AppIntent
の perform 関数から直接カスタム URL スキームを開くことはでき ない ◦ universal link を使⽤する ◦ 作成した SampleAppIntent に static property として URL を渡し、アプリ起動処理時に SampleAppIntent.url をハンドリングする(⽇経電⼦版はこちらを採⽤) 16
コントロールの実装 - AppIntent - struct SampleAppIntent: AppIntent { static var
openAppWhenRun: Bool = true private(set) static var url: URL? static func resetStoredURL() { url = nil } @MainActor func perform() async throws -> some IntentResult { // カスタム URL スキーム Self.url = URL(string: "sampleapp://")! return .result() } } 17 func handle(urlSchemes: [any URLScheme]) -> Bool { guard let url = SampleAppIntent.url else { return false } SampleAppIntent.resetStoredURL() for urlScheme in urlSchemes where urlScheme.canOpen(url: url) { return true } return false } perform 関数の中で、static property として URL を渡す アプリ起動処理時に SampleAppIntent.url をハンドリン グして、期待した画⾯に遷移する AppIntent App 本体
コントロールの実装 - AppIntent - • 詳しくは NIKKEI のテックブログをご覧ください ◦ https://hack.nikkei.com/blog/ios18-control/
18
アイコンやウィジェットを新しい⾒た⽬に 19
ホーム画⾯のパーソナライズ • アプリのアイコンとウィジェットを、ライト、ダーク、⾊合いで表⽰するこ とができるように • アイコンを好きな位置に置けるように • アイコンのサイズも変えられるように 20 https://support.apple.com/ja-jp/guide/iphone/iph385473442/18.0/ios/18.0
⽇経電⼦版のアイコン対応 21 ライト ダーク ⾊合い
⽇経電⼦版の Widgets 対応(画像) • 画像のレンダリング⽅法を指定できる • widgetAccentedRenderingMode ◦ accented ◦
accentedDesaturated ◦ desaturated(⽇経電⼦版はこちらを採⽤) ◦ fullColor 22
iOS ⽇経電⼦版本体もダークモード対応しました! 23
Widgets の地味に嬉しいアップデート struct SampleWidget: Widget { var body: some WidgetConfiguration
{ AppIntentConfiguration(...) .promptsForUserConfiguration() } } 24 • Configurable な Widgets が追加された時に ⾃動的にオプションを表⽰出来る
Widgets の地味に嬉しいアップデート 25 設定が変えられることを知らないユーザーが多いので、Widgets を活⽤してくれ るユーザーがより増えることを期待(NIKKEI Tech Talk #8 より)
https://speakerdeck.com/nikkei_engineer_recruiting/nikkei-tech-talk8-1?slide=35
App Store でフィーチャー • 最新機能対応すると取り上げてもらえる可能性がある • ⽇経電⼦版は iOS 18 におすすめのアプリとして
App Store に掲載 ◦ コントロール ◦ ホーム画⾯のカスタマイズ ◦ ロック画⾯のカスタマイズ ◦ (昨年対応した)スタンバイ → ◦ など 26
まとめ 新 OS 対応はやりがいだらけ! • プロダクトとして ◦ ユーザーエンゲージメントをあげるアイディアが隠れている ▪ ⽇頃から
iOS の最新技術をキャッチアップしている iOS エンジニアだからこそ、提案が 出来る ◦ App Store で取り上げてもらえる可能性がある ▪ インプレッションが増える ⤴ • エンジニアとして ◦ 新しい技術を⼿探りで実装していくプロセスは楽しい 27