Thrown into this with a current app. that "boss" hates!

Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
So I have been a web designer in the windows environment for years. I am proficient in html, css, javscript. I have the full suite of Adobe products on the Windows side and have taught myself flash, all aspects of photoshop, dreamweaver, etc.. I have recently started learning mobile apps and was getting ready to start tackling Android apps. Just a quick one or two sentence background about me, I broke my back 2 years ago, had 3 surgeries, and am at home now learning a new career. So I am self taught on most everything I know thanks to books, tutorials, and scouring the internet to learn what I need.

A close friend "boss" came to me a couple weeks ago begging me to help fix an application he spent alot of money to have built for his work in an Apple environment. He offered to buy me a new MAC and anything I need to make the changes necessary for it be what he intended it to be. His guy that built it has suddenly disappeared after getting paid. I have been wanting to learn how to build apps for iPhones so I figured why not, I love to learn and what a great challenge. Im waiting to be approved from Apple as an official member/ developer, but I really need to get past this point Im stuck on right now.

Well I have spent the last couple of weeks spending 18-20 hours a day learning xcode4. I feel I have made a ton of progress and have created multiple dummy apps just for practice. However, the application he wants me to improve was built in xcode3.

First off, I have read that you can work on an xcode3 project in xcode4 with no problem. If someone could please verify that I would appreciate it. I have several questions but have a feeling that this one could make the difference in some of the areas Im stuck in.

I will go ahead and ask my second question, and this is definitely going to show off my newness to the IOS and xcode environment, but in windows its so simple to look at any project and be able to tell where the beginning page is, the login page, the index page, if you will. However, with this application this guy build in xcode3, I cant find the "home" or beginning page of the app. in any of the code. I have identified almost all parts of his code and have learned so much about how he designed it, and am ready to make the changes my buddy wants to the app, but cannot seem to find that first initial login page/script. Is anyone willing to help a newbie out here who is very eager to learn and is a super fast learner?;D

I would be forever grateful and eventually a valuable contributing member to this forum, but just need to get over a couple of newbie hurdles.

Thanks so much,
WH
 
Joined
Apr 27, 2011
Messages
11
Reaction score
0
Points
1
Hi!

You can open an xcode 3 project in xcode 4, it should convert fine if it is a simple project without sub-projects etc...just try it on a backup copy!

The beginning point of any C program is always the main function. This is also true for Objective-C/Cocoa. A function called UIApplicationMain is called in the main function, starting the Cocoa "machinery". For most developers, the start point is the applicationDidFinishLaunching: method of the UIApplication delegate. Look for this method and you'll find your starting point!
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Thank you!

Hi!

You can open an xcode 3 project in xcode 4, it should convert fine if it is a simple project without sub-projects etc...just try it on a backup copy!

The beginning point of any C program is always the main function. This is also true for Objective-C/Cocoa. A function called UIApplicationMain is called in the main function, starting the Cocoa "machinery". For most developers, the start point is the applicationDidFinishLaunching: method of the UIApplication delegate. Look for this method and you'll find your starting point!

This is really helpful; thank you. The more and more I dig into the code on this app he created, the more problems I find. I think I will be on this forum quite a bit with questions regarding his process. Thank you again.
WH
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Happy Anniversary

If you have specific questions, I am glad to help out!

First of all, Happy Anniversary today...being your one year mark as a member of this forum.

Second, if your serious, Im going to take you up on that because this thing is a real mess and although I have learned a ton in the last couple of weeks, much of the code this guy put together makes little to no sense at all.

Have a great weekend! I know what I will be doing all weekend! haha

WH
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Avis Nocturna...and anyone else who has see this?

In this application Im trying to fix, it was supposed to be built such that you can use it on an iPhone or an iPad or even a full blown MAC desktop. However, when I run the simulator for the iPad version, it comes up the same size as the iPhone, with a button at the bottom of the iPad screen called "2x". When I click on that it obviously doubles in size, but the resolution is horrible!

What is the chance I have missed something and its actually viewable correctly on the iPad? Or does that just prove that it was only designed for the iPhone and will not show up on an iPad in the proper dimensions/ resolution?

Any feedback/ support/ suggestions very much appreciated.

Regards,
WH
 
Joined
Apr 27, 2011
Messages
11
Reaction score
0
Points
1
Hi,

this normally means that the iPad simulator is running an app that is only iPhone-Compatible, not made for the iPad. The iPad simulator and the iPad device determine if the app is compatible from the info.plist file of the app. Check the UIDeviceFamily key in that file, this should give you a clue!
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Thank you!

Thanks for responding so quickly. I will check to see.

Hey I have one more question if you dont mind, one that is probably easier than Im making it, but I have had my head in the books and video tutorials all week learning xcode and am either drawing a blank or have no idea on this one. My buddy just called and tried loading the app on his brand new iPad and it says he must upgrade to the 5.1 OS before running this app.

What did his programmer do or not do so that it cannot be run on all devices? That is just odd to me on such a basic app, which is mostly just tables and charting, that you have to upgrade to the most recent iOS to run it. He is trying to get his old programmer to pull it off the store so I can made the mods. to correct the problems. So do I need to do to convert this app to run on all iOS versions as far back as 3? Is it simple or is there at least a tutorial on the process?

Again I so very much appreciate your help and quick responses. If I can return the favor somehow let me know.

Regards!
 
Joined
Apr 27, 2011
Messages
11
Reaction score
0
Points
1
Hi!

There are two things that limit on which iOS version an app can be started.

First: The Info.plist file contains a minimum system version. If this is set to 5.1, it will only run on 5.1

Second: If the app uses library calls which are only present in iOS 5.1, the app will not run/crash on earlier systems if the info.plist minimum version is below 5.1.

If the app you have to refactor was written using the Xcode 3 IDE, it is not possible that it will only run on iOS 5.1 since there is no iOS 5.1 SDK for Xcode 3.

Hope that helps!
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Regarding UIDevice.h

The app does not have a UIDeviceFamily key, or at least I have not located it yet, but in the UIKit.framework folder I found the UIDevice.h file and based on the information in their, it appears there are no instructions/ parameters for the iPad, only the iPhone and iTouch. All of the UI files would be in that folder correct?

Im going to look over your answer to my last question. Thank you again.
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Good timing...

HI!

Have a look here: Loading…

I was actually looking at that page when you posted it. I dont have the page you are referring to, yet the UI page I do have, is not listed in that list. I guess I need to keep looking around and hope its in another folder.

As far as the iOS5.1 and xcode3 question, I took a screenshot of the Interface Builder info. on the right when I was on the "MainWindow.xib" page and this is what I have...so am I just not digging around deep enough on either question/challenge?

Screen Shot 2012-04-28 at 2.35.28 PM.png
 
Joined
Apr 27, 2011
Messages
11
Reaction score
0
Points
1
Hi!

You need to add the key UIDeviceFamily as an array to your Info.plist with the values 1 and 2 in that array to get your app running on both, iPhone and iPad.

The screenshot you've posted is from a single XIB file. If you want to check the deployment os version, check your project settings.
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Hi,

I got it. So I will add the key as an array with the values you suggested; I did read that on the UI description page you linked over.

As for the screenshot, I wish I could send you a screenshot of the whole xcode platform, but there are details on their that would break my non-disclosure agreement with my buddy.

So, if you dont mind and are not frustrated with me yet (haha) I have the project settings page up and this is what is listed:

"Project Format" Xcode 3.2 compatible (Under the Project Document Panel on the right)
"Deployment Target" 5.1 (in the center under iOS Application Target)
"Devices" iPhone (in the center under iPhone/ iPod Deployment Info.

There are 5 Linked Frameworks and Libraries (not sure yet what this means exactly)

Ah maybe this is what you are referring to...when I click on the icon under "PROJECT" in the left of center it shows that the iOS Deployment Target is 5.1. So is this why he is not able to pull up the app. on his new iPad?

Could I convince you to explain why it says "1 target" under the Project name but up in the center top area where you see the progress bar when the simulator is loading it says "project 11 with the triangular yellow apostrophe in the middle of "project" and "11"? Does that mean there are 11 problems with the project? That would made sense because that symbol appears frequently in the code navigator.

So does any of this info. give you a clue why it wont load on a new iPad 3? After I put in the key in the Array the problem with resolution in the iPad simulator will be gone right?

Thank you a million if you are able to make sense of this!
MH
 
Joined
Apr 27, 2011
Messages
11
Reaction score
0
Points
1
It is strange that it is not loading on his new iPad 3 since the iPad 3 needs to have iOS 5.1 if I am not mistaken!

The "1 Target" means that in your project file contains one target. You can have multiple targets per project, for example one target for a demo version of your software, the other target for the full version.

The yellow triangle means that you have 11 warnings in your project, but no errors (this would be a red stop sign).

I would set the deployment target to iOS 4.x and the devices option to iPhone/iPad.

How did you send the app to your buddy? Have you signed it? Did you send the provisioning profile with it?
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
It is strange that it is not loading on his new iPad 3 since the iPad 3 needs to have iOS 5.1 if I am not mistaken!

The "1 Target" means that in your project file contains one target. You can have multiple targets per project, for example one target for a demo version of your software, the other target for the full version.

The yellow triangle means that you have 11 warnings in your project, but no errors (this would be a red stop sign).

I would set the deployment target to iOS 4.x and the devices option to iPhone/iPad.

How did you send the app to your buddy? Have you signed it? Did you send the provisioning profile with it?


No it goes like this. He had a company (which I think turns out to be just a one man shop) build the application. He paid him up front, which was his first mistake. So the guy says it will take a month or two. Well 10 months later , after not responding to countless emails, calls, TM's, this guy sends him an email letting him know the app is done, approved by Apple, and now available in the app store. So my buddy, very excited at this point, goes to the app store, find the app, downloads it, and hits the floor screaming because its nothing like he asked it to be. So, he calls and calls and calls to get the guy on the phone and gets no response. He asked me what to do and I said you need to demand to at the very least get the files. He knows I have been working on learning how to build apps for Android and was eventually going to learn Apple anyway. A couple weeks later the guy sends him the files.

So my buddy sends the files to me and offers to get me whatever equipment I need to learn the process, become a member/developer for Apple, and fix his application. Of course part of this included signing a non-disclosure and no-compete agreement, which I was fine with because I understand business and he has already been jerked around once. So while I was in the process of getting approved by Apple, he brought over an IMAC, sent me the files, purchased a couple of books, and I have been teaching myself xcode and the whole development process. Everything I know about computers I learned myself so he was confident I could learn this, and I had the same confidence, just did not expect to have to learn it in 2 weeks. haha

Last week I received my approval, and now Im knee deep in the code and trying to get this thing fixed for him. The more I learn, the more I realize how messed up the project is that this programmer put together. It works; its functional, but its ugly, its missing a bunch of stuff, and worst of all it wont install on a new iPad, which dramatically affects the business model that the entire thing was founded on.

Anyway I forgot what your first part of the post was so will go back and look that over and thank you again for your help with this. I know it wont be the last questions I have but will I sure do appreciate you helping as quick as you have so far.

Regards,
MH
 
Joined
Apr 27, 2011
Messages
11
Reaction score
0
Points
1
Sorry you got me wrong.

You said earlier that your buddy tried the app on his iPad and got the notification that it requires iOS 5.1...right? How did you send him the app?
 
OP
W
Joined
Apr 25, 2012
Messages
13
Reaction score
0
Points
1
Exactly...Hence me racking my brain all day trying to figure out what Im not understanding.
 

Shop Amazon


Shop for your Apple, Mac, iPhone and other computer products on Amazon.
We are a participant in the Amazon Services LLC Associates Program, an affiliate program designed to provide a means for us to earn fees by linking to Amazon and affiliated sites.
Top