440 likes | 571 Views
How I entered the jailbreak scene. Aaron Ash @aaronash. I’ve always liked computers. Popular Tweaks I wrote . Multifl0w. Barrel. Tweak making. It’s not as easy as it looks I promise! (always unexpected bugs) But it’s also not impossible If you work at it, you can do it.
E N D
How I entered the jailbreak scene • Aaron Ash @aaronash
Popular Tweaks I wrote Multifl0w Barrel
Tweak making • It’s not as easy as it looks • I promise! (always unexpected bugs) • But it’s also not impossible • If you work at it, you can do it
How I make tweaks • Idea • Hack at it • Test it • Share it • Polish it • Release it • Improve it • I
Idea • Useful • Looks cool • (hopefully both of the above) • It works well
Sources for ideas • What can be improved? • What is annoying? • What could be given more shine? • What do people want? • What do you want?
Hack at it • class-dump-z the binary • Hack around with cycript (cycript.org) • Log stuff to see what’s going on • Figure out the best places to hook • Code it (check out Logos/Theos framework by DHowett)
Test it • Put it on your actual device • If you can stand it, you’re off to a good start • If you can’t, try fixing biggest bugs • If it just won’t work, don’t force it
Share it • See what your friends think about it • Show Twitter • Listen to feedback
Polish it • Fix as many bugs as you can • Fix crashes (nobody likes unexpected resprings) • Double check for memory leaks • First impression might be your only impression
Release it! • Write up a clear description • Maybe make a website • Submit to a repo (I prefer BigBoss)
Improve it • Tweet about it on release • I normally make a YouTube video demonstrating the tweak • Squash any bugs you missed • Add features users request • Repeat! Have fun
Multifl0w • I had an iPhone, wanted to make stuff • Was <18, couldn’t join Apple’s program • Solution: jailbreak! • Friend in high school had a Palm Pre • I thought its “cards multitasking” was cool • Why didn’t iPhone OS have it? • “hmm, I could try making that”
Problem: Didn’t have a mac (or money) • Solution: Install SDK on windows!
Problem: Couldn’t figure that out • Solution: Install SDK on linux! • Instructions are on saurik.com, couldn’t be that hard right?
Problem: Couldn’t figure that out either (but I think I got close) • Solution: need to research more...
Answer: install toolchain on device! • I used Notepad++ on Windows 7 RC • Used WinSCP to autosync files and compiled on device through SSH
Problem: Very little documentation on MobileSubstrate and/or examples + explanation • Solution: check out open source projects, just keep hacking away at it...
Got lots of attention • Felt lots of pressure to release it • So I did... • But I should have waited. It could have used more work.
Gizmodo article! • Posts on almost all jailbreaking sites • Engadget article • got invited to “the cool” IRC channel
It’s all good! • Few weeks later, phone starts ringing... • Caller ID says “Palm, Inc.” • uh oh...
How my jailbreak time is normally spent (estimated)
Barrel! • Icon effects
Barrel • I wanted to make SpringBoard more fun • Inspired by Compiz/Beryl • Made mostly in my Econ class
How it works(in a nutshell) • Hooks -(void)setContentOffset:(CGPoint)offset • Calculates percentage between pages • Uses CATransform3D to retain frame positions