Sunday, November 23, 2008

How to backup SMS text messages on an iPhone?

Connect to the jailbroken via SFTP and backup the content of the following folder: /private/var/mobile/Library/SMS/

More about it in French here.

Monday, October 6, 2008

Interesting iPhone application


Here is what they say:

I’ve been very reluctant to post about hacks and cracks lately as I think you guys use these cracks for the wrong reasons. I talked to a lot of developers within the last few weeks and I can understand where they’re coming from and more importantly, why they don’t want to see their applications hacked and made available for free all over the Internet (mostly for financial reasons).

However, I do believe in freedom of information. I also believe that some of you will carefully use what I’m going to talk about. I said it before and I’ll say it again; if you install a cracked application on your iPhone and you like this application, please buy it from the App Store. It is the fair way to do it. Most of these apps are under $5 anyways, so if you can afford a $200 phone, I’m sure you can afford a few $.99 apps every once in a while.

This being said, I’m going to show you how you can install cracked iPhone ipa games and applications directly from your iPhone (a la App Store). We already covered the lenghthy and painful method of “manually” adding ipa files to your iPhone. This one is much more pleasant.

I am not sure of the prerequisites for this new method. You might have to perform the steps covered in this tutorial (ie. create extra folder, set the proper permission, etc…) for it to work. Since I already performed all these tricks on my iPhone, I may have a built-in advantage on you. So try this method, and if it doesn’t work, try this first.

Please do not send me angry emails and do not post insulting comments if it doesn’t work and messes up your iPhone. You are doing this at your own risks. Ok? Understood?

Alright, here is how to install cracked ipa files directly from your iPhone:

  1. Make sure you are on a jailbroken iPhone. If you don’t know how to do this, check out one of these posts.
  2. Go to Cydia and uninstall the Safari Download Plugin if you had previously installed it
  3. Still in Cydia, add this source:
  4. Still in Cydia, install “Installous” and “AppShare”
  5. Quit Cydia
  6. Reboot your iPhone

You will now have 2 new icons on your spingboard: a green one and a blue one. The blue one is AppShare. Open it and you will see the different sources of cracked ipa. Choose one ( and the Monkey’s Ball don’t seem to work - at least for me). Browse for an application. Click “install”. Done!

Some people are already reporting that it crashes when trying to install an ipa. That might be the permission and the extra folders issue I was mentioning above. This might be a fix for crashes during install. Again, I’m just reporting the raw info here. I didn’t develop this so I’m not sure how everything works. Please let us know in the comments.

Saturday, August 9, 2008

List of useful Mac OS X applications

Adium [freeware]
This is a multi-protocol instant messaging client, very well integrated to OSX. Check the website for the supported IM protocols, but most likely it has the ones you need (including AIM, MSN, Jabber/GTalk and Yahoo).

Adobe Photoshop Elements 6 [commercial - €90]
Good photo editing software for amateurs and enthusiasts.

Adobe Reader [freeware]
To open PDF files.

aMule [freeware]
emule (edonkey) clone for Mac OS.

Azureus [freeware]
Java-based bittorrent client.

FacebookSync [freeware]
Import Facebook contact details to the Mac OS address book. Alternative download link here.

Filezilla [freeware]
FTP client.

Firefox [freeware]
No need to introduce the leading multi-platform and open-source web browser.

Flickr Uploader [freeware]
Easily upload your pictures to Flickr to share them online.

Flip4Mac WMV plug-in [freeware]
Play Windows Media video files in Quicktime and all Quicktime-based applications (including Frontrow).

Fluid [freeware]
Webkit-based (Safari) site specific browser. It will let you turn web applications (like gmail or gtalk) into a native Mac OS application with it's own icon, window ... and supports scripting to make the application interact with the system (example: display new e-mail notification in growl or in the dock).



Photomatix [commercial - $99]
Generate High Dynamic Range (HDR) pictures from multiple shots with different exposure compensation.

Safari AdBlock [freeware]
Remove ads (pictures, flash0 from webpages in Safari, based on an online URL list.

Spanning Sync [commercial - $25/year]
(enter the coupon code 3TFDVT at registration for a $5 discount)
Synchronize Mac OS' address book and ICal (and by therefore your iPhone) with GMail contacts and Google Calendar.

XiaoCidian [freeware]
This is a Chinese language add-on for the Apple dictionary application. It can be used to display instant translation by typing ctrl+cmd+d from some applications including Safari (first, select a word or put the mouse pointer on it).

Friday, July 25, 2008

IPhone 2.0 synchronization - MDCrashReportTool closed unexpectedly

I was getting the following message when synchronizing my iPhone with firmware 2.0 to iTunes: "MDCrashReportTool closed unexpectedly". This is cause by a bug in Apple's crash reporting tool which make it crash when retrieving bug reports from the iPhone (pretty ironic ;-)). 

To avoid the issue, you can open a Mac OS terminal widow, and type the following command (one line):

sudo chmod a-x /System/Library/PrivateFrameworks/MobileDevice.framework/Versions/A/Resources/

This simply prevents the tool from running. Note this is a workaround and not a fix, and it will completely disables the bug reporting functionality (but it was crashing anyway ...).

Sunday, July 20, 2008

List of usefull iPhone applications

Here are the applications I have installed on my iPhone.

- weDict is a dictionary application, with translation dictionaries available from/to English for several languages.

- iChinese is a program that teaches you how to write Chinese characters by drawing them in the screen 

- Terminal lets you type command lines

- SSH installs an SSH server to remotely access your iPhone

- BossPref is a second Settings application that lets you configure new things (including enabling/disabling SSH).

Thursday, May 22, 2008

View your work calendar (Outlook) in Google Calendar and vice versa

I like Google Calendar because it is available from anywhere as long as you have Internet access (including on an iPhone ...) and there is no synchronization problem if you use it with several devices: all of them are using the same datastore. One thing I was missing though is that I didn't have my work meetings in it. And doing things the other way around would have been neat: having my personal stuff displayed in my Outlook calendar is usefull when you are planing meetings late in the evening or business trips.

My goal was not to synchronize the calendars (I wouldn't risk to mess-up my Outlook calendar with the synchronization process) but rather to have each calendar displayed within the other one in read-only mode.

Here is how I did it:

1. Setup the Outlook -> Google Calendar export process and schedule it every 15 minutes

The most simple, automated and reliable way of displaying my work calendar in Google Calendar that I found is to export it using SyncMyCal. This is not free ($25), but not too expensive either and it works very well. Also it will work fine behind a company proxy server which requires authentication.

To set this up, install SyncMyCal and go to Settings / Sync operations. Click "add" to create a new operation and apply similar settings to the ones in the following screenshot. Beforehand, create a new calendar in Google Calendar which will host your Outlook Calender - in this example it is called Outlook *hidden* (the hidden part in my company's name).

Then, if you need to setup a proxy server you can do so in Settings/Advanced Settings/Connection.

At this stage you can run a manual sync and it should populate you new Google Calendar with your Outlook appointments.

The last thing is to go to Settings/Advanced Settings/Auto Sync, make sure Auto Sync is enabled and set how often you want it to run (in my case every 15 minutes).

That's it, now as long as your work computer is on it will feed Google Calendar with any change in your Calendar every 15 minutes.

The result in Google Calendar looks like this (the blue events were created in Google Calendar, and the green ones came from Outlook):

2. Setup Outlook (2007) to display Google Calendar

This second step is much simpler as Outlook 2007 can display remote iCal calendars, which is supported by Google Calendar.

To set this up, first go to you Google Calendar settings, on the calendars tab, and click on the name of your main calendar. Under the private address section, click in iCal and copy the URL of the calendar:Then in Outlook 2007, go to Tools/Account Settings, and open the Internet Calendars tab.
Click on New, and enter your Calendar's URL.

If you go to the Calendar view, your Google Calendar should now appear under My Calendars.
To see the meetings from both calendars on one view, thick both of them under My Calendars. If they are displayed side by side, go to the View menu and select View in Overlay Mode.

The result in Outlook 2007:

Saturday, May 17, 2008

How to make a non-compatible HP printer work with an Apple Airport Express? (Mac OS X)

I own an HP 3745 printer (same as 3740), which I was able to use remotely with my Airport Express quite easily on my laptop running Windows and Linux (in both cases, create an IP printing port and use the normal driver).

However when I switched to an Apple laptop running Mac OS X it stopped working as the Mac drivers provided by HP don't seem to support network printing too well ... pretty ironic that only the Windows drivers work seamlessly with Apple's Airport Express!

I found a solution with open-source hpijs drivers. Here is how I made it work (follow the different steps in order):
  1. Browse
  2. Download and install Ghostscript (find the appropriate version for you OS/system)
  3. Download and install Foomatic RIP (find the appropriate version for you OS/system)
  4. Download and install HPIJS (find the appropriate version for you OS/system)
  5. Go to Print & Fax in the system preferences
  6. Add your printer as a Bonjour printer, the computer should automatically select the corresponding Foomatic/HPJIS driver
  7. You are done :-)

I assume the same will work with an Airport Extreme or a Time Capsule which are based on the same technology, and it applies to most HP printers (you can find a list of printers supported by the hpijs driver here).

Finally, to date I found only one drawback: the driver lets you select if you want to use the color or the black cartridge, but it is not possible to use both at the same time. This means that if you print color documents the blacks will be printed using a combination of color inks, and therefore they will be more dark grey than black and it will cost you more money.

Sunday, April 6, 2008

Activate all the international keyboards/dictionaries on an iPhone version 1.1.4

As opposed to the iPod Touch which comes with a wide-enough selection of on-screen keyboards and dictionaries, the iPhone (1.1.4) is limited to the ones for the countries in which the phone was officially available at the time of the firmware's release (English/UK, English/US, French/France, German/Germany). So thanks to Apple, if you want to input text in another language, you will have to jailbreak your iPhone and tweak it a bit.

Here is how to do it:

A. Activate the international keyboards

To activate all the international keyboards, follow these steps:
  1. Download the file from here.
  2. Drop the UIKit file found inside into /System/Library/Frameworks/UIKit.framework on your iPhone (you can use SCP or SFTP - i.e. your iPhone must be jailbroken with the SSH server installed and running). Maybe it is a good idea to backup the old file beforehand.
  3. Set the right permissions for hte file (chmod 755) if your SCP/SFTP client doesn't do it automatically.
  4. Restart the iPhone.

B. Copy dictionaries to have spell check with the newly activated keyboards

Then, you can copy dictionaries if needed. For example, I want to use the French-Canadian keyboard to have a qwerty layout instead of the French azerty one. I am able to do that once step A is completed, however as it is hidden by default Apple didn't include the dictionary files for it, as a consequence there is no spell check when you use it. To solve this, I copied the French dictionary for the French-France keyboard to the French-Canadian keyboard. To do that, you can connect to the iPhone via ssh and type:

# cd /System/Library/KeyboardDictionaries
# cp ./fr_CA-one-letter-words.dat ./fr_CA-one-letter-words.dat.bak

# cp ./fr_CA-two-letter-words.dat ./fr_CA-two-letter-words.dat.bak
# cp ./fr_FR-one-letter-words.dat ./fr_CA-one-letter-words.dat
# cp ./fr_FR-two-letter-words.dat ./fr_CA-two-letter-words.dat
# cp ./fr_FR-stems.dat ./fr_CA-stems.dat
# cp ./fr_FR-unigrams.idx ./fr_CA-unigrams.idx
# cp ./fr_FR-unigrams.dat ./fr_CA-unigrams.dat


Saturday, March 29, 2008

How to fix the bug which prevents the iPhone from maintaining cookies/sessions (firmware 1.1.4)

When I started using Safari on my iPhone, I realised something was strange: I couldn't maintain a session on gmail or Facebook for more than a few seconds. I actually only could red 1 message and then the site would ask for my login and password again. I suspected something was wrong with the cookies management, but I didn't find anything in the settings menu to help me.

A Google search helped me to solve the problem. It seems like on some iPhone shipped with firmware 1.1.4 there is an issue with the permissions on some folders, including the one containing the cookies. These folders belong to the root user whereas when you use the iPhone you are actually logged in as a user called mobile.

To fix this, you can just open the terminal on you iPhone (it has to be jailbroken and with the Terminal application installed) and type:

chown -R mobile /var/mobile/

This will fix the permissions and cookies should work properly.

Wednesday, March 26, 2008

How to setup an iPhone for Vodafone Live (Ireland)

Note: this tutorial is based on Mac OS X, but if you understand it you will be able to apply it to a Windows/Linux computer using your own SCP/SFTP client to access the iPhone's filesystem (or use iphonebrowser as an easier way to transfer the files). Moreover, if you know the EDGE setting and the WAP proxy for a different mobile operator, you might also find it usefull as long as you make the appropriate changes during Step 1 (use the right APN) and Step 2 (edit the proxy.pac file to include the IP addres of your operator's proxy server).

This tutorial has been tested with an iPhone version 1.1.4, assumes you have created a folder called "iphone" on your Mac OS desktop and that the IP address of the iPhone is Check the IP address of the iPhone (settings / wifi / arrow going right next to your network name) and replace by that address in the command lines given in the tutorial. The iPhone must also have OpenSSH installed and be connected to the same Wi-Fi network as your computer. Finally, the default root password on firmware 1.1.4 is "alpine". You will be requested to type it every time you are copying files to or from the iPhone.

Step 1: On the iPhone go to settings / general / network / EDGE and set the following parameters

login: dublin
password: dublin

Step 2: download the file proxy.pac into the "iphone" folder on your Desktop

Click here to download proxy.pac

Step 3: upload the file proxy.pac to the iPhone

Open a terminal window and type (one single line - you can copy and paste the whole text in italic):

scp ~/Desktop/iphone/proxy.pac root@

Step 4: retrieve the file preferences.plist from the iPhone

In the terminal window, type (one single line - you can copy and paste the whole text in italic):

scp root@ ~/Desktop/iphone/

Step 5: edit the preferences.plist file in the iphone folder

Open the file with Text Editor and add the text in red (the text in blue is already present and helps you find where to add the new parameters, moreover the ip1 in bold is the important bit to locate the right location in the original file):

<key>Interface</key> <dict> <key>DeviceName</key> <string>ip1</string> <key>Hardware</key> <string></string> <key>Type</key> <string></string> </dict>
<key>Proxies</key> <dict> <key>ProxyAutoConfigEnable</key> <integer>1</integer> <key>ProxyAutoConfigURLString</key> <string>file:///var/mobile/proxy.pac</string> </dict>
<key></key> <dict> <key>AllowNetworkAccess</key> <integer>1</integer> <key>Available</key> <integer>1</integer> <key>Setup</key> <dict> <key>apn</key> <string></string> <key>password</key> <string>dublin</string> <key>username</key> <string>dublin</string> </dict> <key>Version</key>

Once the changes have been made, save the file.

Step 6: send the modified file back to the iPhone

In the terminal window, type (one single line - you can copy and paste the whole text in italic):

scp ~/Desktop/iphone/preferences.plist root@

Step 7: restart the iPhone

Hold the power button for a few seconds and confirm you want to shut down the phone. Then turn it back on.

Final step: that's it, you can now make sure Safari works even with the Wi-Fi connection disabled