My question is... Can we use Xcode to create a tweak for jailbreaked iPhone? Foe example if I want to add some button in the lock screen how can I do? How can I mod the GUI of the default iPhone applications?
2 Answers
This is a really old question, but David is actually incorrect on most counts.
You can add custom UI to jailbroken devices, create tweaks without Xcode, hook into anything you wish, and more, without even having the source code for SpringBoard or wishing for it to be extensible.
MobileSubstrate is a code replacement platform that literally allows you to do anything. You don't even need to be an expert, but admittedly, having at least a moderate grasp on programming and Objective-C concepts helps a lot.

- 1,635
- 11
- 13
-
Thank you David! Where I can find some tutorial? – paul_1991 Aug 02 '11 at 10:24
-
2You can find a lot of Getting Started information at http://iphonedevwiki.com; It's a wiki targeting jailbroken app development. As well, a lot of people use a build system called "Theos" which, when coupled with another language on top of objective-c called "Logos" makes Tweak-writing very easy. You can also come hang out in the IRC channel #theos at irc.saurik.com, if you're interested in using theos and logos to build MobileSubstrate tweaks! :) – Dustin Howett Aug 02 '11 at 16:57
-
augh, i meant iphonedevwiki.net :( – Dustin Howett Aug 02 '11 at 17:06
-
1Thank you so much! I read them all but I can't find some others information/tutorial about how logos works except some Lines at iphonedevwiki.net... Can you suggest me something else? – paul_1991 Aug 03 '11 at 01:13
What you're talking about cannot be done. You're assuming 1) that you will have the source code for Springboard (lock screen), and 2) that those programs are extendable.
Without having the source code (it's proprietary), you cannot make "Tweaks" to the lock screen. You have nothing to compile into the lockscreen.
While you can mod them by editing the internal plists (simple things like show title bar or disable rotation), you will not be able to add functionality using XCode.
To create "tweaks" you would have to rewrite the lock screen entirely, or insert very low-level hooks into the Springboard/iOS. This is not possible via Xcode alone, since Xcode is not capable of even installing iOS-level apps (all installed apps are user-level).
You need expert knowledge of the private framework calls, and possibly be capable of disassembling and reverse engineering the specific program you're trying to extend.

- 5,810
- 3
- 37
- 70
-
@Dustin My statements are 100% correct. Question asked "How can I mod the GUI of **the default iPhone applications**?" It can't be done. You're extending a replacement, not the original. – AWF4vk Aug 02 '11 at 21:52
-
12No, you can extend the ORIGINAL, DEFAULT apps using MobileSubstrate, you're not extending a replacement. Those binaries are not modified or replaced in any way. – Dustin Howett Aug 07 '11 at 02:25
-
2and using `class-dump` helps you reverse engineer the headers of objective-c frameworks (public or private), which is most of what you need. good old objective-c ... giving your headers away to those who you don't want to have them, and making almost everything easily extensible! – Nate Jun 24 '12 at 13:12