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
Take a peep at .app
Search
griffin-stewie
December 08, 2017
Technology
470
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Take a peep at .app
How to dig into Apple's app.
griffin-stewie
December 08, 2017
More Decks by griffin-stewie
See All by griffin-stewie
How I develop a Sketch Native Plugin
griffin_stewie
0
790
Boost your App Dev using Sketch
griffin_stewie
0
320
Lightweight Markup Language to PDF
griffin_stewie
1
630
ドキュメント作成どうしてる?
griffin_stewie
0
630
Pitfalls of PhotoKit
griffin_stewie
0
280
Talk about "clg" color list generator.
griffin_stewie
1
490
Tips for Apple Watch.
griffin_stewie
0
860
JSON をそこそこ見やすくする CUI ツールを Objective-C で作ったときの話
griffin_stewie
1
600
Other Decks in Technology
See All in Technology
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.6k
現場回帰したデータエンジニアが考える AI 時代のキャリア開発 / Career Development in the Age of AI Perspectives from a Hands-on Data Engineer
medley
0
160
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
250
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
270
Go 1.27 の標準パッケージに uuid が入った!のでいろいろ喋る / go_127_std_go_uuid
convto
2
420
Head First モブプログラミング / Head First Mobprogramming
takaking22
10
12k
Genie Codeハンズオン応用編
taka_aki
0
130
SmartHR Engineering Team Deck
smarthr
1
2.8k
My broken English still works: speaking at global OSS events
naruoga
0
120
モノリス Rails でも日中に rails db:migrate を走らせたい! / Daytime rails db:migrate on Monolithic Rails!
euglena1215
4
640
システム思考で問題に対処する
yussak
0
350
TypeScript入門 2026
recruitengineers
PRO
3
700
Featured
See All Featured
Abbi's Birthday
coloredviolet
3
9.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
250
Navigating Team Friction
lara
192
16k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
470
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
280
Building an army of robots
kneath
306
46k
Designing Powerful Visuals for Engaging Learning
tmiket
1
500
The Curious Case for Waylosing
cassininazir
1
460
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Skip the Path - Find Your Career Trail
mkilby
1
190
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
470
Transcript
Take a peep at .app @griffin-stewie
Fenrir Inc. @griffin-stewie
Motive
• ۀͰʮApple ͷ˓˓ΞϓϦ෩ͳײ͡ʯ • ࣮ࡍʹͲ͏ͬͯΔͷ͔ؾʹͳΔ
We can do it!
iOS Simulator ͰͳΒ • Xcode ͷ Attach To Process •
ϓϩηε໊͕͔Ε͍͚Δ • ViewDebugging Ͱߏ͕͔Δ • LLDB Ͱ෦࣮͕͔Δ
1. Xcode ͰదͳϓϩδΣΫτΛ։͘ 2. γϛϡϨʔλͰ Debug Run 3. ରΞϓϦΛγϛϡϨʔλͰىಈͤ͞Δ 4.
Attach To Process 5. ViewDebugging ։࢝ खॱ
How to find?
ද໊ࣔ ϓϩηε໊ ΧϨϯμʔBQQ .PCJMF$BM ࣸਅBQQ .PCJMF4MJEF4IPX ਤBQQ .BQT /FXTBQQ /FXT
ϦϚΠϯμʔBQQ 3FNJOEFST ϔϧεέΞBQQ )FBMUI 8BMMFUBQQ 1BTTCPPL ઃఆBQQ 1SFGFSFODFT J.FTTBHFTBQQ .PCJMF4.4 4BGBSJBQQ .PCJMF4BGBSJ ࿈བྷઌBQQ $POUBDUT ϗʔϜը໘ 4QSJOH#PBSE
Demo
None
Tips
LLDBͰΰχϣΰχϣ • View Λબ • ӈϖΠϯ OnjectInspector ʹΞυϨε͕͋Δ • Console
ʹίϐϖͯ͠ϝιουݺͼग़͠
Swift ͰΖ͏ͱ͢Δͱ • Framework ͷΠϯϙʔτ͕ඞཁ • Ωϟετ͕ඞཁ • ͦͦະͷΞϓϦͩͱʹͳΒͳ͍
͜͜Ͱ Objective-C
Objective-C ͳΒ • Framework ͷΠϯϙʔτ͕ෆཁ • (ิ͕͍Βͳ͍ͳΒ)Ωϟετ͕ෆཁ • ະͰؔͳ͍
Wrap up
ಘΒΕͨݟ • Apple Container ViewController Λଟ༻͍ͯ͠ Δ • UIWindow.rootViewController
͕ΧελϜ ViewController • Ϋϥε໊ͷ໋໊ͷࢀߟ
͓·͚ • Ϋϥεͷ෦࣮·ͰݟΔͷςΫ͕͍Δ • LLDB Plugin (Chisel) ศར • ࣮ػͰσόοάγϯϘϧ͕͋Εʁ͕ࣗϏϧ
υͯ͠ͳ͍ΞϓϦͰ Attach ͯ͠ͷ͚ͧΔ