Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
業務アプリの切札 Programable KIOSK mode 大全
Search
r-plus
September 17, 2017
Technology
4.4k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
業務アプリの切札 Programable KIOSK mode 大全
iOSDC 2017資料
r-plus
September 17, 2017
More Decks by r-plus
See All by r-plus
Swizzling Swizzling Swizzling
r_plus
0
460
Image optimization for mobile on CDN
r_plus
0
720
Advanced guard of DeallocationChecker
r_plus
2
3.3k
東急ハンズの P2Pレジ間通信2018
r_plus
4
2.2k
enum as Option.
r_plus
0
2.4k
Enterprise cert management.
r_plus
0
410
CircleCI 2.0 for macOS
r_plus
1
1.4k
carthage verify
r_plus
2
6k
PropertyObserverとinoutでやらかした話
r_plus
1
1.3k
Other Decks in Technology
See All in Technology
AI駆動で「他アプリの音を加工できる」アプリを作った
satomasahiro2005
0
190
オントロジーって 結局なにもの? AI エージェントに「意味」を渡す知識設計の話
greenmidori
0
260
CSS2026:OWS研究会・招待講演「世界観を、実装する」
atsush1_sada
2
210
Persisting Massive Data with Rails ~Designing for 60 billion rows, and fighting the bottlenecks~ Railsで挑む大量データ永続化 〜600億件を永続化するための設計とボトルネックとの戦い〜
occhi
0
780
Steerable Visual Representations
sansantech
PRO
0
160
Browser Spec: Testing Hotwire with Ruby
takahashim
1
160
LLM-as-a-Judgeは本当に信頼できるのか――評価器を評価する話
taka_aki
3
1k
CloudWatch Logsのコスト最適化:どこまでAIに任せてどこから人間が承認すべきか
yama3133
0
160
macOS Golden Gate 時代のMac管理
tategami
0
130
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
220
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
7
5.3k
フィンテック養成勉強会#68
finengine
0
210
Featured
See All Featured
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
450
The Cult of Friendly URLs
andyhume
79
7k
Six Lessons from altMBA
skipperchong
29
4.5k
Design in an AI World
tapps
1
360
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
350
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
460
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.7k
Marketing to machines
jonoalderson
1
5.9k
Designing Experiences People Love
moore
143
24k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Transcript
ۀΞϓϦͷࡳ Programable KIOSK mode େશ 9/17 iOSDC 2017 taiki komaba(@r_plus)
UBJLJLPNBCB !S@QMVT )"/%4-"#*/$
,*04, BLB4JOHMF"QQ.PEF
Programable Require Supervision Require MDM Guided Access No No No
SingleApp Mode No Yes No ࣗత SAM Yes Yes Yes ࣗಈධՁ ઃఆ Yes No No
Guided Access
SS͓͘
GUIDED ACCESS ▸ ϗʔϜϘλϯ ▸ εϦʔϓ/ϩοΫϘλϯ ▸ ϘϦϡʔϜϘλϯ ▸ ΩʔϘʔυ
▸ λον ▸ ը໘ճస
GUIDED ACCESS ▸ ϗʔϜϘλϯ ▸ εϦʔϓ/ϩοΫϘλϯ ▸ ϘϦϡʔϜϘλϯ ▸ ΩʔϘʔυ
▸ λον ▸ ը໘ճస ⚠ଟͷσόΠε੍ޚʹ͔ͳ͍
SingleAppMode
Apple Configurator
MDM
SINGLE APP MODE ▸ ϗʔϜϘλϯ ▸ εϦʔϓ/ϩοΫϘλϯ ▸ ϘϦϡʔϜϘλϯ ▸
ΩʔϘʔυ ▸ λον ▸ ը໘ճస ▸ AssistiveTouch ▸ ζʔϜ ▸ ৭స ▸ VoiceOver
SINGLE APP MODE ▸ ϗʔϜϘλϯ ▸ εϦʔϓ/ϩοΫϘλϯ ▸ ϘϦϡʔϜϘλϯ ▸
ΩʔϘʔυ ▸ λον ▸ ը໘ճస ▸ AssistiveTouch ▸ ζʔϜ ▸ ৭స ▸ VoiceOver ଟͷσόΠεʹEFQMPZՄೳ
SINGLE APP MODE ▸ ϗʔϜϘλϯ ▸ εϦʔϓ/ϩοΫϘλϯ ▸ ϘϦϡʔϜϘλϯ ▸
ΩʔϘʔυ ▸ λον ▸ ը໘ճస ▸ AssistiveTouch ▸ ζʔϜ ▸ ৭స ▸ VoiceOver ଟͷσόΠεʹEFQMPZՄೳ ͔͠͠"1*͕͑ͳ͍
ࣗత SingleAppMode
ࣗతSINGLE APP MODE ▸ ϗʔϜϘλϯ ▸ εϦʔϓ/ϩοΫϘλϯ ▸ Multitasking ΞϓϦͷΈར༻Մʹ͢Δత
ແޮԽͰ͖Δ߲͕গͳ͘ઃఆෆՄ
ࣗಈධՁઃఆ (Automatic Assessment Configuration)
ࣗಈධՁઃఆ ▸ ϗʔϜϘλϯ ▸ εϦʔϓ/ϩοΫϘλϯ ▸ Multitasking ▸ ࣗಈิ/εϖϧνΣοΫ/༧ଌม/ΩʔϘʔυγϣʔτΧοτ/ ΫϦοϓϘʔυ/Իೖྗ
ࢼݧར༻ͷͨΊͷ,JPTL ΞϓϦͷΈར༻ՄʹՃ͑ͯ ճิॿʹͳΔΑ͏ͳػೳͷແޮԽ
Programable Require Supervision Require MDM Guided Access No No No
SingleApp Mode No Yes No ࣗత SAM Yes Yes Yes ࣗಈධՁ ઃఆ Yes No No
Programable Require Supervision Require MDM Guided Access No No No
SingleApp Mode No Yes No ࣗత SAM Yes Yes Yes ࣗಈධՁ ઃఆ Yes No No
)PXUP FOBCMF QSPHSBNBCMF
func UIAccessibilityRequestGuidedAccessSession (_ enable: Bool, completionHandler: @escaping (Bool) -> Void)
UIAccessibilityRequestGuidedAccessSession(true) { success in print(success) } ⚠completionHandler͕࣮ߦ͞ΕΔ·Ͱඦmsఔ͔͔Δ
-PDLBCMF
εϦʔϓϩοΫϘλϯ ແޮԽର
͔͠͠ ͨ·ʹϩοΫͰ͖Δ
None
ϩοΫͰ͖ ·ͨ͠
Ͱɺ͜Εηʔϑ
ը໘ফ౮͞Ε͍ͯΔ͚ͩ ϩοΫղআը໘ग़ͳ͍
,JPTL $SBTI
,JPTLϞʔυͰ Ϋϥογϡͨ࣌͠ Ͳ͏ͳΔ͔ʁ
ϗʔϜը໘ʹભҠޙ ࣗಈతʹΞϓϦ͕ىಈ
None
(͏·͘ىಈ͠·ͨ͠)
ఆظతͳ FYJU ͰϝϞϦͷΫϦΞ͕Մೳ
ͱࢥ͍͖ɾɾɾ
None
ΘΓͱىಈ͠ͳ͍
͔͠
ΞϓϦΛλοϓͯ͠ ىಈ͠ͳ͍
શΞϓϦɺλοϓͯ͠ ىಈ͠ͳ͍☠
XPSLBSPVOE ͋Γ·͢
,JPTLΦϑͰͷ$SBTI ͳΒൃੜ͠ͳ͍
func NSSetUncaughtExceptionHandler(_: ((NSException) -> Void)?)
func NSSetUncaughtExceptionHandler { exception in UIAccessibilityRequestGuidedAccessSession(false){ _ in } }
4XJGUͷΫϥογϡͰ ݺΕͳ͍ func NSSetUncaughtExceptionHandler { exception in UIAccessibilityRequestGuidedAccessSession(false){ _ in
} }
4XJGUͷΫϥογϡ OJMVOXSBQFUD ⚡γάφϧ⚡͕ඈͿ͚ͩɻ
SIGNALS ▸ SIGHUP ▸ SIGINT ▸ SIGTRAP ▸ SIGABRT ▸
SIGKILL ▸ SIGSEGV ▸ … NBOTJHOBMͰ৭ʑݟΕ·͢
⚡γάφϧ⚡Λτϥοϓ͠Α͏
import Darwin func sigaction(_: Int32, _: UnsafePointer<sigaction>!, _: UnsafeMutablePointer<sigaction>!) ->
Int32 int sigaction(int sig, const struct sigaction *restrict act, struct sigaction *restrict oact); JO$ NBOTJHBDUJPOͰ৭ʑݟΕ·͢ *#.4XJGU#MVF4JHOBMT͕Φεεϝ
·ͱΊ ▸ KioskϞʔυʹ4छྨ͋Δɺ੍ݶͰ͖ΔػೳͦΕͧΕҧ͏ ▸ API͕͑Δͷͱ͑ͳ͍KioskϞʔυ͕͋Δ ▸ KioskϞʔυͰϓϩηε͕ऴྃ͢ΔͱࣗಈͰ࠶ىಈ͞ΕΔ ▸ ࣗಈతͳ࠶ىಈத్ͳঢ়ଶʹͳΔࣄ͕͋Δ ▸
த్ͳঢ়ଶʹͳΔͱ٧Ή ▸ ٧·ͳ͍ͨΊʹNSExceptionͱSIGNALΛΩϟον͠Α͏ʂ
͓ΘΓɻ