When restoring iPhone from a backup, icons are not restored as they were at the time of the backup.
This is due to the fact that the applications are restored after the settings, and the system does not check where an application was located from a previous installation.
There's a simple fix for that, though: do a second restore from backup. It will be fast, because no data needs to be transferred, so just the settings will be applied, including the position information for existing applications.
[robg adds: I just restored from a backup on my replacement iPhone 3G, and the icons are all in the right spots. I honestly don't recall if I did the restore twice or not, but I may very well have -- I know I had some issues after the first restore, so it's quite possible I did it again. If anyone can confirm if two restore cycles are needed to restore app positions, please comment.]
The script works by adding numbers to contacts in Address Book that dial your contact via Google Voice. The new number is prefixed with your Google Voice number, your pin, and the number two. It dials into your Google Voice number and places the call to your contact.
The advantage of this method over apps like GV Mobile or the web is that you don't need a data connection to place a call, and you don't need to answer the ring-back. The downside is that waiting for the pauses and all the dialing is a bit slow. Also, your address book gets cluttered up with all the duplicate numbers.
Here is the code. Replace YOUR_PIN_HERE and YOUR_GV_NUMBER_HERE with your Google Voice pin and voice number, respectivel (leave the quotes). Enter this in Script Editor then run it:
I haven't had any problems, but you might want to back up your Address Book before running this script. (This script will also delete any phone label with the text GV in it. So if you are using labels with that sequence, you should change the prefix used in the code).
[robg adds: Lacking Google Voice access, I haven't tested this one. I added the link to the story about Google Voice and iPhone apps, to provide context for those who may not be aware of the issues.]
Like many people, I jailbroke my 3G out of curiosity. I didn't find anything useful or interesting enough to keep my phone that way, so I restored my phone to factory default settings. I did notice though, that if the battery percentage display was enabled (via sbsettings or bossprefs) while jailbroken, it will remain enabled through a factory reset.
To disable, I had to re-jailbreak the phone, hide the battery percentage display, back up via iTunes, then un-jailbreak (incarcerate?), and restore from backup.
As far as I know, there is only one news app (AP Mobile) that pushes news to your phone. However, they only push really big stores to the phone, which means only two or three updates a week. In my mind, that defeats the purpose of push news.
The other option seemed to be to sign up for loads of email lists from wsj.com, cnn.com, etc. This gives lots of duplicates and since it's email, it cannot compete with the ease of a push (or text) notification on the lock screen. I deleted AP Mobile, unsubscribed from my mailing lists, and came up with this solution:
Add @BreakingNews to the list of folks you're following on Twitter.
On your twitter.com page, enable device updates for @BreakingNews (on your Following page), and add your iPhone number.
This give me non-duplicated breaking news pushed to my iPhone (via text message). Since the services messages are already formatted for Twitter, they are complete at 160 characters. I also like that they don't always link to articles with shortend URLS. Some might not like this, but really, when you have an iPhone and are curious, Google isn't that far away.
Of course, these are text messages, so you'll need a hefty SMS plan (I have 1500) in order to cover the activity. BNO is releasing their own native iPhone app soon ($.99 per month) , and hopefully that'll do exactly what this workaround does, but better. Until then, this works great.
[robg adds: BNO has now released their native BNO News iPhone app ($1.99, plus $.99 per month), which would also solve the problem (and is getting good reviews on the App Store), but the above method is free, assuming you have enough SMS messages in your data plan.]
As discussed in this thread on Apple Discussions, the iPhone doesn't support delegated calendars served by the iCal server part of OS X Server. I believe the following is a usable workaround.
If you are set up as a delegate of someone's calendars, you can trick the iPhone into giving you full access to those calendars. For each delegate, you need a separate CalDAV account set up in the iPhone which is a pain but doable for small companies.
Set up the CalDAV account with your server and your login information. Put anything you want for the description, but I suggest the name of the calendar user you are gaining access to, such as Jane. When done, go back into the account details and click Advanced Settings. Click the Account URL and change the end of the URL from yourname to Jane (in my example, use the short name of the person you're accessing).
When you go back into your list of calendars, you will see this new category (Jane) with the calendars listed.
The Arabic keyboard is supported natively in iPhone OS 3.0. However, there are some missing characters like 'hamza' (ء), and different shapes for some, such as 'alef' (أ ,آ), etc. To see these characters, you have to press and hold on the on the plain 'alef' (ا), then you will see a list of similar shapes. You can also do the same thing for 'Ya`' (ي) to get (ى).
Urdu and Perian can also see their extended characters for 'v' -- press and hold (ف) and, for 'ch', press and hold (ج), etc.
Since the release of 3.0, cut-copy-paste has been an amazing feature. I have used and abused it from SMS to Safari and beyond. I will claim I can type up a storm (no pun intended) on my iPhone and will generally leave characters behind, or find words that the auto-correct thinks are different than I do. To prevent confusion, I always double-check and correct my typos.
With the iPhone, you have always been able to press and hold and obtain the magnifying class to get precisely where you want in the text. In 3.0, I have noticed a little lag when doing so (and it may be my 3G; who knows) and trying to edit my text. As such, the easier correction method here is to double-tap the incorrectly spelled word and then start back over clean.
This hint can also be used for mass delete or mass replacement of text.
I just discovered this today, though I'm not sure if it's a feature of iPhone OS 3.0 or if it's been there all along. As you know, you can stream a podcast episode rather than downloading it by double-tapping the episode within the iTunes app on the iPhone. The familiar QuickTime logo will appear and you can listen to the podcast instead of downloading it.
However, a nifty feature is that when you start streaming the episode, you can close iTunes and it will still play. I've been able to open other apps whilst the iTunes app is playing a podcast episode.
I never thought I'd have a hint to post, but I recently learned something that is not well documented about short iPhone battery life. This only applies if you use WiFi on a business or enterprise server.
After getting my first iPhone (a 3GS), I was happy to see that battery life was relatively good and it accessed the web and email quickly on my home WiFi. It also worked, although a bit slower, on a 3G connection. At work, however, mail seemed to hang and the battery died in about four hours .. oh no!
I found that the phone was continuously trying to retrieve email, but was unable to do so. This not only drained the battery, but seemed to make the entire phone a bit sluggish while it tried forever to connect.
The reason for this is that many companies, mine included, block IMAP mail by blocking ports 993 and 587. Because they use Exchange (I don't want to use my iPhone for their mail, only my personal Gmail), they block many ports that are not directly required by their business in the hopes this will block intruders from their system.
In my case, it is a large company and I am a small part, so they will not unblock their ports. The two workarounds are to turn off WiFi (which slows down the Web, Twitter, and other internet-based apps), or to disable the Gmail account in the Mail app and use a web interface for retrieving my personal email. Neither is a perfect solution, but after all, the WiFi network does not belong to me.
It would help if Apple gave us a way to force the Mail app to use either 3G or WiFi, or to tell Mail app to stop looking to connect if it can't connect quickly. I'd appreciate hearing from any others who have a better solution.