Hey,
i tested the app from post #35. After compailing i get I failer:
What does this mean? Does the installation of the toolchain fail?error: too few arguments to function UIApplicationMain
Thx for helping!
Sw00sh
Hey,
i tested the app from post #35. After compailing i get I failer:
What does this mean? Does the installation of the toolchain fail?error: too few arguments to function UIApplicationMain
Thx for helping!
Sw00sh
Hey guys i hope somebody can give me some help :-).
I followed the guid to install the toolchain. After success i try to test it. Sadly it didn't work.
I get an error while compiling: too few arguments in function UIApplicationMain
I copied the code from the post #35.
Any idea what i did wrong?
Thx for helping
Sw00sh
Someone asked me about how to skip the Provisioning Profile in order to build & go in official sdk applications (not using toolchain headers) as they are not registered developer. As the profile is signed by Apple's WWDC certificate, I think it is difficult to create a fake. But it is rather easy to amend the project template in order to skip the step for the profile.
Here is how
(1) If you have an existing project from the Official Template, you need to change the code-sign identity and add two user-defined
settings in your Project Setting as below
There are two instances for this part (one for Debug and another for Release)Code:"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Pwned Developer"; PROVISIONING_PROFILE_ALLOWED = NO; PROVISIONING_PROFILE_REQUIRED = NO;
(2)
Then amend the Info.plist of your project
and add these
Then you can build & go your project with support of debug and setting break point like other registered iPhone developerCode:<key>SignerIdentity</key> <string>Apple iPhone OS Application Signing</string>
To use this method to build & go. You need
(1) Have a fake code sign identity called "iPhone Pwned Developer" in your Mac (if you have not already done so)
Here is the nice guide from Apple to create a self-signed identity
http://developer.apple.com/documenta...section_2.html
(2) You need to patch the MobileInstallation in your iPhone (if you have not already done so)
Here is how to patch the binary in iPhone and create backup first of course (the patch program is for iPhone which I compile from the source and supports 2.0 to 2.0.2)
(3) You don't need to patch SpringBoard, as the changing of Info.plist has done this trick.Code:wget http://www.cocoatouchdev.com/javacom/mobileinstallation_patch cp -p /System/Library/PrivateFrameworks/MobileInstallation.framework/MobileInstallation /System/Library/PrivateFrameworks/MobileInstallation.framework/MobileInstallation.backup chmod +x mobileinstallation_patch ./mobileinstallation_patch ldid -s /System/Library/PrivateFrameworks/MobileInstallation.framework/MobileInstallation
I have updated my XCode Template to add a new one called "View-Based Application" which is modified from the original one based on the method stated above.
To install this project template, do this in your Mac
MD5 (ToolChainTemplate_v31.zip) = b3690c87565786a0c8430bb9a41704fbCode:curl http://cocoatouchdev.com/javacom/ToolChainTemplate_v31.zip > ToolChainTemplate_v31.zip unzip -o ToolChainTemplate_v31.zip -d "/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Project Templates"
To test this new template "View-Based Application"
Create a new project from "View-Based Application" of "Application Pwned" and modified the ViewController file and implement the loadView as below, then Build & Go to your device.
You need to have the "iPhone Pwned Developer" certifcate in your Mac plus patch of MobileInstallation in your iPhone for successful build & go
Enjoy and port all your applications to firmware 2.0Code:- (void)loadView { UIView *contentView = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]]; self.view = contentView; [contentView release]; self.view.autoresizesSubviews = YES; CGRect frame = CGRectMake(10.0, 10.0, 250.0, 100.0); UITextView *textView = [[[UITextView alloc] initWithFrame:frame] autorelease]; textView.textColor = [UIColor blackColor]; textView.font = [UIFont fontWithName:@"Arial" size:18.0]; textView.backgroundColor = [UIColor whiteColor]; textView.text = @"This is the time for Developer to port all applications to firmware 2.0"; [self.view addSubview: textView]; }
<------- Thump up for me, if you like this thread
Last edited by javacom; 09-21-2008 at 01:07 PM.
First of all, thanks for your help javacom, really helpfull
Second, I've encountered a minor irration, which might not be solvable.
Here goes;
Everything is fine as long as I build for my device, but when I choose to build for the simulator, and then switch to building for the device again,
I get the "no provisioning blabla" error.
And I'm guessing this is logical, right?
Or is there a way to solve this?
Guess I'll only be testing the apps on my iTouch itself from now on![]()
Last edited by Sethie; 09-06-2008 at 01:33 AM.
(1) Are you using the new template to start a new project, or add the user-defined variables in your existing project ?
(2) If you add the user-defined variables in your existing project, make sure you amend both the "Debug" build and "Release" build. That means you have to change the Project Settings selection to "Debug" and amend the settings then change it to "Release" and amend again. There are two build types (Debug & Release) to make the change. See my last remark in point (1) above.
Last edited by Sethie; 09-06-2008 at 01:11 PM.
If you have this error, change it to something like
The toolchain header from http://code.google.com/p/iphone-dev/ was updated on Aug 19, 2008
Code:returnCode = UIApplicationMain(argc, argv, @"HelloWorld",@"HelloWorld");
Last edited by javacom; 09-11-2008 at 09:41 AM.
Yes, the template will fail to build & go when you change your build to iPhone Simulator and then switch it back to build & go to the iPhone device.
The error message is
If this happens, the temporary solution is toCode:CodeSign error: no provisioning profiles found for code signing identity 'iPhone Pwned Developer'
(1) Close the project file in Xcode
(2) Use Mac terminal to change directory to the project directory and remove the temp file in project file (e.g. if the Project is called HelloWorld)
(4) Then open the xcode project file and build and go to device again.Code:cd HelloWorld rm HelloWorld.xcodeproj/*.pbxuser
Last edited by javacom; 09-11-2008 at 09:14 AM.
I have a link to a patched MobileInstallation for 2.1. Everyone that wants it can PM me.
I can deploy from iPhone SDK 2.0 to my iPod Touch running 2.1 with only this patched MobileInstallation and the other instructions on this thread (modified Info.plist, signed MobileInstallation, etc.) As with 2.0, there's no need for a signed SpringBoard if you do the other things.
BTW, the provisioning profile hack no longer works with SDK 2.1. I have the SDK installed on 2 separate Mac Minis: SDK 2.0 in one Mac Mini, and SDK 2.1 on the other. When I copy the same project to SDK 2.1, it complains about the provisioning profile not being available for the signing identity, even if the certificate exists in the keychain and even with the PROVISIONING_PROFILE_REQUIRED AND _ALLOWED flags in the settings. I can verify the problem is SDK 2.1 and not an error in my part, because it works if I deinstall 2.1 and reinstall 2.0
Needless to say, I've remained on 2.0 until we can figure what to do about 2.1
Last edited by swmirage; 09-16-2008 at 01:03 AM.
Bookmarks