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
Ryo Tsuzukihashi
June 26, 2022
Programming
2
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
二次元コードを読み取りやすくするために 画面を強制的に明るくするのは もうやめにしませんか?👀
tsuzuki817
0
380
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
tsuzuki817
3
4k
Complications and widgets: Reloadedの要約
tsuzuki817
1
1.1k
Speech framework tips
tsuzuki817
1
2.5k
Build complication in SwiftUI の要約
tsuzuki817
0
670
SwiftUI で Neumorphism!!!
tsuzuki817
2
1.8k
SwiftUIで作りながら学ぶアニメーション インジケーター編
tsuzuki817
0
560
Other Decks in Programming
See All in Programming
tidymodelsによるtidyな生存時間解析 / Japan.R2024
dropout009
1
770
CSC305 Lecture 26
javiergs
PRO
0
140
testcontainers のススメ
sgash708
1
120
バグを見つけた?それAppleに直してもらおう!
uetyo
0
180
42 best practices for Symfony, a decade later
tucksaun
1
180
Go の GC の不得意な部分を克服したい
taiyow
2
770
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
250
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1k
Semantic Kernelのネイティブプラグインで知識拡張をしてみる
tomokusaba
0
180
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
310
Jakarta EE meets AI
ivargrimstad
0
240
あれやってみてー駆動から成長を加速させる / areyattemite-driven
nashiusagi
1
200
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Making the Leap to Tech Lead
cromwellryan
133
9k
Designing Experiences People Love
moore
138
23k
Into the Great Unknown - MozCon
thekraken
33
1.5k
Typedesign – Prime Four
hannesfritz
40
2.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
29
2k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
5
440
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
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?