A little-known feature of the iPhone is its ability to display subtitles on movides. To do this, you just need the free programs MKVtools, SubCleaner, and Subler, and a
conversion program -- I recommend FilmRedux. Once those are installed on your Mac, do this:
Convert the file to a raw, unsubtitled .MP4 with FilmRedux
Extract the UTF8 subtitle file (.srt) from the original file with MKVtools
Clean up the .srt with subcleaner
Merge the .mp4 and the .srt together in subler
Then sync the movie over to your iPhone. Next to the rewind button, a new subtitle button will appear.
I have multiple addresses associated with my IMAP account (ebay@, groups@, shopping@, etc.). When sending mail from my iPhone, the addresses associated with your account can be selected by tapping on the From field, and choosing an entry from the pop-up rolodex.
Unfortunately, while the iPhone's Mail preferences app supports multiple comma-separated From addresses in the account information (just as OS X Mail does), there is no easy way to add them. Any multiple addresses that were present on the computer when the iPhone was originally set up will have been added at that time. However, when you go to the Address field of your account, only legal SMTP characters are available for typing input, so there is no way to type the comma separator.
Now under iPhone OS 3.0, copy/paste to the rescue! To create your first additional address, just temporarily edit the Description field immediately below Address. This is a full-text field and you can enter your new address with a leading comma and space. Then Copy the entire string out, select an insertion point at the end of the Address field, and Paste the new address in. Exit Preferences, go to Mail and create a new message, and tap on the From field. You will see the rolodex pop up and be able to choose your alternate name. Voila!
After having created one additional address, adding others is simple as you can just Copy/Paste within the Address field without disturbing your Description.
I run iTunes from a server tucked away at the back of a closet, streaming to Airtunes speakers, and I use iPhone's Remote software to control everything. I love it, except: There's no obvious way to control iTunes radio streams from Remote. So when I want to listen to the radio (say, every single morning to hear NPR news), I have to climb into the closet and launch it from iTunes there.
My solution: Create a playlist in iTunes for the radio stream(s) I listen to regularly. Then they show up as playlists in Remote on the iPhone.
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.