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 16からのロック画面Widget争奪戦に備える
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ryo Tsuzukihashi
June 26, 2022
Programming
2
1.1k
iOS 16からの ロック画面Widget争奪戦に備える
YUMEMI.swift #15 ~WWDC復習会~
Ryo Tsuzukihashi
June 26, 2022
Tweet
Share
More Decks by Ryo Tsuzukihashi
See All by Ryo Tsuzukihashi
AlarmKitで実現する 新時代のシステム通知
tsuzuki817
0
5.8k
SwiftUI Transaction を徹底活用!ZOZOTOWN UI開発での活用事例
tsuzuki817
1
3k
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
3
1.2k
二次元コードを読み取りやすくするために 画面を強制的に明るくするのは もうやめにしませんか?👀
tsuzuki817
0
480
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
tsuzuki817
3
5.8k
Complications and widgets: Reloadedの要約
tsuzuki817
1
1.4k
Speech framework tips
tsuzuki817
1
2.9k
Build complication in SwiftUI の要約
tsuzuki817
0
750
SwiftUI で Neumorphism!!!
tsuzuki817
2
2k
Other Decks in Programming
See All in Programming
New in Go 1.26 Implementing go fix in product development
sunecosuri
0
430
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
110
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.8k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
450
受け入れテスト駆動開発(ATDD)×AI駆動開発 AI時代のATDDの取り組み方を考える
kztakasaki
2
560
Claude Code Skill入門
mayahoney
0
280
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
160
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
180
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
380
The Ralph Wiggum Loop: First Principles of Autonomous Development
sembayui
0
3.7k
new(1.26) ← これすき / kamakura.go #8
utgwkk
0
2.2k
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1k
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
470
A designer walks into a library…
pauljervisheath
210
24k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
140
Making the Leap to Tech Lead
cromwellryan
135
9.8k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
91
New Earth Scene 8
popppiees
1
1.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Un-Boring Meetings
codingconduct
0
220
Building an army of robots
kneath
306
46k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
140
The Language of Interfaces
destraynor
162
26k
Transcript
iOS 16からの ϩοΫը໘Widget ૪ୣઓにඋえる YUMEMI.swift #15 ~WWDC復習会~
Self Introduction ᠃ڮ ྋ !UTV[VLJ Ϡϑʔגࣜձࣾ 1BZ1BZϑϦϚ J04ΞϓϦ։ൃ झຯݸਓ։ൃ
My Apps
My Apps 8JEHFUରԠ
Contents 01 LockScreen ৽͍͠ϩοΫը໘ ͷػೳ 02 Color and Rendering ৭ʹ͍ͭͯ
03 Privacy Ϣʔβʔͷϓϥό γʔΛकΔ 04 Addapted ϓϩδΣΫτʹ Ճ͢Δ
New Lock Screen
None
None
None
New Widget
Complicatioins? l ΞϓϦʹؔ͢ΔλΠϜϦʔͰؔ ࿈ੑͷߴ͍ใΛΥονϑΣ Πεʹදࣔͤ͞Δ l ෳࡶͳใΛͻͱͰཧղͰ͖ Δͷ l XBUDI04͔Β4XJGU6*Ͱ࡞Ε
Δ
accessoryCircular
accessoryRectangular
accessoryInline
accessoryCorner
Color and Rendering watch face ͱ LockScreenͷ ϨϯμϦϯάͷҧ͍ΛΔ
Color and Rendering
Color and Rendering
Color and Rendering ロック画面にはダークモードの設定がない ため、考慮しなくて良い
fullColor l ࢦఆ͞Εͨ৭௨Γʹදࣔ͞ΕΔ l ΧϥϑϧͳݟͨʹͳΔ l XBUDI04ͷΈ
accented l ࣗಈతʹ৭͚͞ΕΔ l ίϯςϯπͭͷάϧʔϓʹ͚ ΒΕϑϥοτʹண৭͞ΕΔ l ݩͷಁ໌ͷΈΛอ࣋͢Δ l XBUDI04ͷΈ
accented l XJEHFU"DFOUBCMF l αϒϏϡʔ·ͰΞΫηϯτάϧʔϓ ʹՃ
accented ΞΫηϯτΧϥʔʹΑͬͯେ͖͘ݟͨҟͳΔ
vibrant ϩοΫը໘ͷϨϯμϦϯάϞʔυ
vibrant ίϯςϯπҰ৭͞ΕΔ
vibrant ϩοΫը໘ͷഎܠʹ߹Θͤͯࣗಈతʹ৭͚͞ΕΔ AndroidのMaterial Youと同等
New SwiftUI WidgetΛΑΓྑ͘͢ΔͨΊͷ SwiftUIͷ৽ػೳ
AccessoryWidget Background എܠ͕ඞཁͳΟδΣοτʹҰ؏ͨ͠എܠΛ༩͑Δ͜ͱ͕Ͱ͖Δ
AccessoryWidgetBackground
ProgressView (interval:coundDown:) ҰͷΤϯτϦʔͰ8JEHFUΛΞχϝʔγϣϯͤ͞Δ͜ͱ͕Ͱ͖Δ
ViewThatFits ෳͷ7JFXΛࢦఆ͢Δͱར༻Մೳͳεϖʔεʹऩ·Δ࠷ॳͷίϯς ϯπϏϡʔΛදࣔ͢Δ
Privacy ϩοΫը໘ʹஔ͍ͨ8JEHFUͷ ηΩϡϦςΟΛߴΊΔ
iOS σϑΥϧτͰ ը໘ϩοΫ࣌Ͱ ίϯςϯπදࣔ͞ΕΔ ॏཁͳใԽͤ͞Δ
.privacySensitive() iOS15~ https://developer.apple.com/documentation/swiftui/view/privacysensitive(_:)
watchOS ίϯςϯπًʹͳΓ ߋ৽ස͘ͳΔ͕ ίϯςϯπදࣔ͞Εଓ͚ Δ ண͍ͯ͠ΔͱϩοΫঢ়ଶʹͳΒͣඇΞΫςΟϒ࣌ ʹৗ࣌දࣔϞʔυʹͳΔ
isLuminanceReduced
isLuminanceReduced
৽͍͠Widgetͷ Ճํ๏ طଘͷϓϩδΣΫτʹ LockScreen༻ͷWidgetΛ Ճ͢Δ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ 5BSHFUͷ8JEHFU&YUFOUJPOΛෳ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ ໊લΛΑ͠ͳʹม͑Δ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ #VOEMF*EFOUJGJFSʹ XBUDILJUBQQΛՃ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ #VJME4FUUJOHTͰ#BTF4%,Λ XBUDI04ʹมߋ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ 8BUDI"QQͷ(FOFSBMʹҠΓ ઌ΄ͲՃͨ͠8JEHFU&YUFOTJPO ΛՃ͢Δ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ ४උྃʂ 8JEHFUʹ৽͍͠ϑΝϛϦʔΛαϙʔτͤ͞Δ
supportedFamiliesʹՃ
XBUDI04Λར༻͍ͯ͠Δ߹
XBUDI04Λར༻͍ͯ͠Δ߹
XBUDI04Λར༻͍ͯ͠Δ߹ XBUDI04ͷ*OUFOUࣄલʹઃఆ͞ ΕͨϦετΛఏڙ͢Δඞཁ͕͋Δ
1SFWJFXͷදࣔ QSFWJFX$POUFYU 8JEHFU1SFWJFX$POUFYU GBNJMZYYYY
$BOWBT%FWJDF4FUUJOHT 9DPEF͔Βͷػೳ ΑΓ1SFWJFX͕͍͘͢
Widget Family ઃఆͨ͠8JEHFU'BNJMZͷ1SFWJFX Λ֬ೝ͢Δ͜ͱ͕Ͱ͖Δ
Presentation ௨ৗ࣌ ϓϨʔεϗϧμʔ ϩοΫத
variants
ҙࣄ߲
ը૾ͷऔΓѻ͍ʹҙ
ϑΥϯτ ࣗಈద༻ͤ͞ΔͨΊʹσϑΥϧ τͷϑΥϯτύϥϝʔλͱϑΥϯ τελΠϧΛ͏
ϢʔβʔʹΑΔ8JEHFUͷฤू ؒҧ͍ͬͯͨΒڭ͍͑ͯͩ͘͞🙇 l -PDL4DSFFOͷ8JEHFU*OUFOUͷฤू͕ Ͱ͖ͳ͍ʢ؍ଌൣғ l ࣄલʹܾΊΒΕͨύϥϝʔλΛ͏
·ͱΊ ü ৽͍͠ϩοΫը໘ͷొʹΑΓɺϢʔβʔϢʔε έʔεʹ߹ΘͤͯϩοΫը໘Λม͑Δͱ͍͏͜ͱ͕ ༰қʹͰ͖ΔΑ͏ʹͳͬͨ ü ։ൃऀϢʔβʔͷࠣࡉͳχʔζʹԠ͑Δ͜ͱ͕Ͱ͖ ΔΑ͏ʹɺ͞·͟·ͳ8JEHFUΛ༻ҙ͢Δ͜ͱͰࠓޙ ͷϩοΫը໘૪ୣઓʹඋ͑·͠ΐ͏ LiveActivitiesのAPI公開が待ち遠しい….
͓Βͤ iOS/Android ΞϓϦΤϯδχΞ࠾༻͍ͯ͠·͢ʂ
Resources • Keynote ◦ https://developer.apple.com/wwdc22/101 • Complications and widgets: Reloaded
◦ https://developer.apple.com/videos/play/wwdc2022-10050 Videos: • "QQMFɺJ04Ͱಋೖ͞ΕΔ·ͬͨ͘৽͍͠ϩοΫը໘ͷମݧͱɺڞ ༗ͱίϛϡχέʔγϣϯͷͨΊͷ৽͍͠ํ๏Λൃද ◦ IUUQTXXXBQQMFDPNKQOFXTSPPNBQQMFVOWFJMT OFXXBZTUPTIBSFBOEDPNNVOJDBUFJOJPT • XBUDI04ϓϨϏϡʔ ◦ IUUQTXXXBQQMFDPNKQXBUDIPTXBUDIPTQSFWJFX Articles:
Thanks! Do you have any questions?