It’s been a year since Happy B’Day! was approved for sell on the App Store! From a very simple app I developed for my own pleasure, it grew up to be a very successful one with more than 260,000 downloads, supporting 7 languages and used frequently by its users to wish their friends a Happy Birthday!
During the last couple of years I specialized in mobile development and I got to lead or be involved with quite a few iOS related projects. The most important “Do’s and Don’ts” I got to learn from this app. 90% of them are not even related to coding…
I do intend to share these learned lessons with a followup post.
Till then, here is a video review that was just published by CrazyMikesApps:
After struggling for hours to solve the various build errors with Xcode4 and Three20 (old Xcode3.2 project), and then investing additional precious time to get the Xcode4 “Archive” option to work, I decided to document my steps to who ever find it useful.
I’m aware that there are useful guides about this topic, but unfortunately I could not find a complete article that answer all the various build option errors. So hopefully this will be it… :)
First thing to notice is that there is a difference between the “Archive” option and the different “Build for X” options (e.g. for running, archiving, testing).
First thing first. Let’s get the “Build for X” option to work:
Make sure to repeat these steps in each Three20 project in your project tree.
Make sure to set it both in release and debug configuration, and that the same build setting appear in your poject’s target (under the TARGETS section).
Now comes the part where we make the “Archive” function to work:
As you can notice, from now on the only thing you need to manually change before switching between “Archive” and “Build fo *” option is the “Build Location” setting in Xcode4 preference window.
Troubleshooting
During the last few months I was working on my first (private) iPhone application to be submitted to the app store. After completing it, doing a review cycle with friends and implementing the feedbacks, it is finally released and available on the app store.
The app is actually the next generation of “Birthday Synchronizer” which I developed more than 18 months ago for the windows platform. This time I invested some more thought and efforts into it, and frankly, I like the results! :-)
You are more than welcome to check it out yourself and let me know what you think!
http://itunes.apple.com/us/app/happy-bday/id401949944?mt=8
So today I decided to take the risk and buy an iPhone4 without a contract (but locked to AT&T) and make it work with my GoPhone/Prepaid SIM card (without jail breaking).
I bought the 16gb version (599$) from the Apple store. Before doing anything with my SIM card, i simply plugged the new iPhone to my Mac, and iTunes asked for a few “I agree” clicks. Then it asked me if want to restore my old 3GS iPhone backup into my new iPhone 4. That took about 3 minutes and then the phone was up.
After that I cut my AT&T SIM card with a good pair of scissors to get the shape of the micro SIM I’ve got with the new iPhone. If you do that, you have to be carful. You might want to look at some videos on youtube before you start.
After placing my “new micro SIM” into the iPhone4 SIM slot, I waited about two seconds before getting the message I was hoping for: the iPhone activation succeeded!!
So now I could use the iPhone4 for texting and voice but no data yet. so I simply followed the same steps I wrote about a few months ago (see here) and it works! Now I have iPhone4 running with my AT&T GoPhone account, with a regular data package and without any special iPhone contract with AT&T.
I actually had to go through the process twice with another iPhone4. The first iPhone had a bad pixel so I got back to Apple and they replaced it with a new device. Then I placed my “homemade” micro SIM and the activation worked again like a charm.
**though it worked for me I can’t take any responsibility if it does not work for you :-)
UPDATE (OCT. 5th 2011): You can now get a micro sim in the ATT store instead of the regular sized card, so you dont have to cut it. They did not ask me to pay more for it. In addition, you should note that the GoPhone Unlimited plan with the unlimited data does not apply to smartphones including the iPhone (in regards to 3G Data). So you have to purchase a separate data plan (e.g. 500MB for 25$) to make the internet work for you.
Though Apple did not document yet if and how the iPad supports the startup image tag for web applications:
<link rel=”apple-touch-startup-image” href=”/startup.png”>
After some trials and errors I found how to make it work. You just need to make sure that your image is set to size: 1004*768 portrait.
Note that it is 1004 and not 1024. They did the same with the iPhone: 460 instead 480..
Hope you will find this useful.
When I bought my first MAC a week ago, I believed Apple that there is something behind their statement that “Leopard OS is more stable than Windows”. Well… I’m not sure about that..
Here is a small example: if you leave the iPhone simulator open, and try to install any program, it will probably get stuck on the “Preparing” stage… the solution is to close the simulator and reinitiate the install.
If you wonder how you can kill (force close/quit) the installer (or any other program) in a MAC, then it is only a matter of pressing command+option+esc and selecting the program to close.
After buying a prepaid AT&T sim card to be used with my iPhone (mainly for data) while i’m in the US, I realized that AT&T blocks the data connectivity unless you have an iPhone plan on your AT&T account. But I found that when placing the same SIM on Android phone, the network data/internet connectivity works.
After reading about it quite a lot, I realized that many users are facing the same issue.. well.. I think I’ve found a full working solution for it!
What apparently is happening is that by default the iPhone pulls from AT&T an iPhone specific APN that blocks you if you don’t have a real iPhone plan on your account. To override this settings you can use Apple Configuration Utility to change the APN manually. You do NOT need to jailbreak your iPhone.
This is what you need to do to make the data/internet connectivity work on your iPhone with AT&T prepaid sim card. Please note that if you follow these steps I can’t take responsibility for any negative influence it might have while using it.
1. Place your AT&T SIM in your iphone
2. Make sure it finds the network and that you have a data package! The unlimited plan does not apply…
3. Download and install iPhone Configuration Utility from Apple (free) for your PC/MAC
4. Plug your iPhone to your PC/Mac
5. Create a new configuration profile on the iPhone Configuration Utility
6. Go to “advance” and create a new APN by giving it any name you want and any identifier you wish. Type the following in the relevant fields:
APN: wap.cingular
User Name: wap@cingulargprs.com
Password: CINGULAR1
Proxy wireless.cingular.com port: 80
7. Save the profile and then select your iphone name under “devices”
8. Click on “install” button near the configuration profile name you just created (check your iPhone screen, you might be asked to tap on ‘Install’ there as well)
9. Turn on and off the Airplane mode (or restart your iPhone)
That’s it! now it should be able to access the web using the network data connectivity, same as the Android or any other device can do with the same SIM card..
When you’ll want to go back to your old SIM, just place it in and go to your settings on your iPhone and uninstall the profilfe. Or you can use the configuration utility to remove, what ever works better for you.
UPDATE (OCT. 5th 2011): You can now get a micro sim in the ATT store instead of the regular sized card, so you dont have to cut it if you’r using an iPhone4. They did not ask me to pay more for it. In addition, you should note that the GoPhone Unlimited plan with the unlimited data does not apply to smartphones including the iPhone (in regards to 3G Data). So you have to purchase a separate data plan (e.g. 500MB for 25$) to make the internet work for you.
UPDATE (DEC. 28th 2011): Several of you have asked about the iPhone 4S, some have already commented that this approach still works with the new iPhone and iOS 5.0.1, and now I confirmed it myself to be working OK.