Bookmarks sync bug in iOS 6

Help, my bookmarks are stuck!

The Apple Maps in iOS 6 is nothing. Give them enough time, and they will eventually catch up with reality (and maybe with Google at some point). I do have a rather serious issue with iCloud bookmarks sync, though. Since the release on 19th September, my Safari bookmarks have doubled first (breeding like rabbits!), then stopped syncing. Moreover, I am unable to delete them or add any new bookmarks (the Delete button accepts the tap, but then does exactly nothing). Switching iCloud sync for Safari on and off in Settings does nothing either. iCloud tabs keep working even though Safari has been disabled in iCloud options!

As a technical person I would not just sit and wait until someone else finds a solution: I’ve started digging myself. First thing I’ve checked was the Diagnostic Logs (Settings -> General -> About -> Diagnostic & Usage -> Diagnostic & Usage Data).

The culprit is a small lesser daemon

Bingo! This is what I’ve found:

It seems that a process called webbookmarksd is killed by the kernel every few minutes with SIGSEGV. I bet this is eating a lot of battery, because CPU is wasting its time trying to restart the daemon every time it fails (and then wasting even more battery writing the crashlogs).

The next logical step was visiting Apple Support website, specifically the FAQ about problems with bookmarks (TS4001). Unfortunately, after reading through the FAQ and doing all the steps mentioned there – I’m still stuck with the problem.

What now?

For the time being I have filed a bug report on Apple Developer website and wait for Apple response or a working untethered jailbreak for iOS 6, whichever comes first.

You can read more about the issue on Apple Community Support forum: https://discussions.apple.com/thread/4313906?start=0&tstart=0

Solution already exists, no jailbreaking required

As I have initially have guessed, the issue was caused by a broken bookmarks file. Other users who have encountered that problem were able to resolve it with the procedure in this thread: https://discussions.apple.com/thread/4333351?start=15&tstart=0.

I have followed the procedure from the thread and it worked – my iPad 2 works just like new, bookmarks are syncing fine and they are no longer stuck:

  1. Disabled iCloud backup and did a standard backup to iTunes
  2. Edited the backup with iBackupBot, replaced the broken bookmarks.db with one from this address: dropbox link
  3. Restored the edited backup with iBackupBot
  4. iPad did not reboot and it was stuck at recovery screen
  5. I put the device into recovery mode again, by holding the power and home buttons. As soon as Apple logo appeared, I released only the power button.
  6. “Connect to iTunes” logo appeared
  7. I did a restore in iTunes now, usingthe same edited backup – it seems iBackupBot did something wrong.
  8. iPad has restored successfully, duplicate bookmarks are gone, no more crashing webbookmarksd
  9. Re-enabled iCloud backup and bookmarks sync

Remember, by following this procedure, you do so at your own risk!

PS. I did the iOS 6 update at the same time on both my iPad 2 and iPhone 3GS, which had iCloud sync working perfectly fine in iOS 5. iPhone 3GS was completely unaffected by this issue, even though the same set of bookmarks was used by both devices.

iOS 6 surprise

Controlled gossip is one of the most powerful marketing tools ever created by a man. Why? Because most of the features of the new iOS 6, such as new maps, Siri on iPad and Facebook integration have been widely discussed over the past few weeks.

Of course nothing is set-in-stone until Apple officially unveils it during one of their famous Keynotes.

This year WWDC conference not only brought new MacBook Air and MacBook Pro (with Retina display, with nearly 3 times as many pixels as Full HD), but also confirmed most of the iOS gossip mentioned earlier:

  • New maps (with turn-by-turn navigation and introduce 3D fly-by view). Google maps are officially gone. In my opinion this was a premature step (of course justified from the lower 3rd party costs point-of-view). Google maps offer much more content than Apple’s, with features such as Street View and new 3D maps, these are the most advanced maps publicly available in the world.
  • Facebook integration – works just like Twitter integration in iOS 5: sign in once, and use for all apps.
  • Siri comes to iPad (but to the new iPad only). The voice assistant has also become a bit smarter: now features more data sources (such as sports). You can also tell Siri to launch any app you have on your iDevice.
  • Cover flow comes to all three iTunes stores.

And now the features that were not known before Tim Cook’s keynote:

  • Shared Photo Stream – share your photos with other iDevice users
  • Safari improvements – it is now possible to upload photos directly from Safari as you would do on a Mac or PC. iCloud tabs allow viewing websites already opened on other devices  such as Macs, iPads & iPhones. Full screen landscape mode for iPhone provides even more real estate on the iPhone screen.
  • Mail improvements – adding images to a message is now easier. VIP inbox will highlight messages from the most important people.
  • Phone app has received long awaited “Reject with a message”. It is possible to “Reject + Remind to call back”
  • “Do not disturb” mode which can silence all notifications and calls in a specific timeframe (let’s say 10pm to 7am). In this mode only people on the Favorites list will sound the ring. It is also possible to allow the second call – if someone calls twice in the “Do not disturb” mode, the second call will not be silenced.
  • Facetime is not tied to WiFi anymore and now works on 3G/LTE as well. Many people were complaining about this artificial limitation.
  • Passbook – the center for electronic tickets and passes. It is now possible to manage tickets and boarding passes from one place. QR Codes allow third party devices to scan tickets directly form the iPhone screen.
  • Accessibility improvements

In my eyes, iOS 6 is far from a breakthrough, but offers several features requested by the users and some cosmetic changes. The Apple policy of bringing new features, such as Siri to new models only might be justified by the revenue from selling new iPhones and iPads (and also allows to cut expenses on Siri cluster, because if too many users get access to Siri, they are more than likely to crash it), but makes no sense from end user point of view.

The exact release date has not been disclosed yet, but Apple says “iOS 6 is coming this fall”, so we will see it sooner, than later.

You can now ask why the title of this post is “iOS 6 surprise”. The answer is “Because iPhone 3GS is still supported, while original iPad is not”. It is unusual for Apple to support a device for more than two generations of software. Both the original iPhone and iPhone 3G have only received two software updates, so did the original iPad. iPhone 3GS is still sold and supported, most likely to fill the gap for the budget smartphone; iPhones were always marketed as a high-end device. With Tim Cook at the helm this policy seems to change.

iPad 2 does not show signal strength for Aero2

Aero2 is one of the less popular carriers in Poland, mainly because they do not advertise their services. Aero2 has won a frequency tender in which they have been granted 2600 MHz band for LTE, but the company has to provide a free mobile Internet access service until 2014. This free service is called “BDI” – more info about it is only available in polish here. The service itself is nothing fancy, with download speed limited to 512 kbit and PDP context re-set every 30 minutes. Still, as a free service (there is no catches – you only have to pay 20 PLN deposit fee for the SIM card), it is a very good choice for tablet  owners.

Unfortunately, not every terminal is compatible with the service. Aero2 is only offering a data plan, without voice telepfony or text messaging. They limit the services at SIM card level, by disabling TS 11 and TS 21 services (see this 3GPP spec to see what the TS and BS services are), and allowing only the BS 70 service (packet data). iPad 2 can use the bearer service, but it does not show signal strength, and very often it goes into “Searching…” or “No service” mode. The weird part is, PDP context is still available even then (PDP context is the logical connection between user’s terminal and an IP network – such as the Internet or internal company network). I have reported this bug to Apple.

EDIT: Apple bug reports are under NDA, so unfortunately I can’t post the Apple Engineering team response.

 

Share your Windows printers using AirPrint

When AirPrint was first introduced in iOS 4.2, I have spent some time trying to share my Windows printer to my iPad. Of course a free solution was already there, one that involved installing Apple Bonjour Service with CUPS Lite for Windows. So I’ve quickly found that solution on Google and downloaded the necessary tools, namely Bonjour Print Services for Windows and Airprint.zip, which contains the CUPS service.

Making it work was quite easy. You need to unzip the Airprint.zip file to C:\Program Files\AirPrint (on a 32-bit Windows), or to C:\Program Files (x86)\Airprint on 64-bit Windows.

The next step is registering the service: log in as a user with admin rights, click “Start”, “Run”, enter “cmd” and press “OK”.

In the console, enter the following commands:

sc.exe create AirPrint binPath= "C:\Program Files\AirPrint\airprint.exe -s" depend= "Bonjour Service" start= auto
sc.exe start AirPrint

IMPORTANT: If you use 64-bit Windows, use the appropriate Program Files (x86) directory instead.

It worked! …until iOS 5. So I’ve run the Wireshark to see if Apple changed anything to the AirPrint protocol. It was not a surprise that they did:

Luckily, CUPS Lite has several command line switches and it can be adapted to the change.

To make Airprint.exe compatible with iOS 5 and above, run the following commands from the command prompt:

sc.exe stop Airprint
sc.exe delete Airprint
sc.exe create AirPrint binPath= "C:\Program Files\AirPrint\airprint.exe -R _ipp._tcp,_universal -s" depend= "Bonjour Service" start= auto
sc.exe start Airprint

IMPORTANT: Remember to use the right Program Files or Program Files (x86) directory.

Since you’ve seen the picture and the modified entry for Airprint service, you might already have guessed that -R binds CUPS Lite to a slightly different service name (the one which my iPad was looking for). This allows the iOS 5.x devices to be able to find shared printers again.

Make sure airprint.exe is allowed through in Windows Firewall. Some tutorials will tell you to disable Windows Firewall alltogether – don’t do that, it’s a security risk!

Some tutorials will tell you to enable guest account for the sharing to work. Don’t do that, it’s a security risk. If someone accesses your network (for example cracks or guesses your WiFi key), he will be able to print anything on your printer. Use one of the user accounts on Windows instead, and when you order iOS device to print something, iOS will automatically ask you for username and password.

The above has been tested with iPhone and iPad, both running iOS 8.1.2.

PS. If you are running Linux it is still possible to use CUPS and avahi daemon to share a Linux printer to AirPrint enabled devices.

The new iPad announced; iPad 2 price down to 1699 PLN

Yesterday Apple has announced a “Resolutionary” device: “The new iPad”. I’m sure you have already read about the official list of features, but in case you didn’t, here’s a list:

  • 2G/3G/4G (LTE) modem capable of:
    • HSDPA (7.2 Mbit/s)
    • HSUPA (7.2 Mbit/s download and 2 Mbit/s upload)
    • HSPA+ (21 Mbit/s)
    • HSPA+ DC (42 Mbit/s)
    • LTE (72 Mbit/s)
  • WiFi 802.11 a/b/g/n (2.4 GHz & 5.0 GHz)
  • 2048 x 1536 resolution Retina display
  • Apple A5X SoC with 4 graphical cores
  • works 9 hours on battery (LTE mode) or 10 hours in WiFi mode
  • 5MP iSight camera with five-element f/2.4 lens

Pricing didn’t change and the new iPad costs just as much as the old one did. But here is one more thing: as usual, Apple has lowered the price of the now-old iPad 2. The cheapest iPad 2 (WiFi 16GB) now sells for 1699 PLN!

You can order yours on polish Apple Store.

PS. iOS 5.1 is now available both through iTunes and as Over-the-air update.

iPad 2 16GB WiFi 1699 PLN
iPad 2 16GB WiFi+3G 2199 PLN

iPad 2 over-the-air screen mirroring using Apple TV

For polish version please go to tabletowo.pl.

This post is not an attempt to review the Apple TV. There is a whole lot of those already on the internet. Instead, I will focus on one of the functionalities which convinced me to buy the $99 black box from Apple: over the air screen mirroring from iPad 2 (and iPhone 4S). The same feature unfortunately turns out to be the Achilles’ heel of the device. But let’s see why.

Setup

As with most devices from Apple, setting up Apple TV is very easy. After the Apple TV has been connected to the TV set and the network, it’s time to turn on mirroring on the iPad 2. To do this, double click the home button and then scroll the multitasking bar all the way to the right to access media controls. You will notice a new button there, press it:

The same menu is used for AirPlay – a feature that allows streaming audio or video content wirelessly form any Apple device (iPod Touch, iPhone or iPad) to Apple TV or AirPlay-enabled speakers. Choosing Apple TV from the list will only set the default output to Apple TV. To enable the mirroring itself, you just have to switch the “Mirroring” switch to ON. Simple, eh?

Performance

Apple did not allow iPhone 3G to set the Home screen wallpaper, because they were worried about performance. Does over-the-air mirroring perform? Yes and no.

It works. It’s easy. But it has all the disadvantages of video streaming:

  • It introduces latency. There is a noticeable delay between what happens on the iPad screen and on the TV set. This is caused by buffering, which is necessary to keep any streaming connection up. If the buffer is too small, the stream will stutter. If it is too big, it will become even more laggy. Lag is noticeable in games that require reflexes. Even though Real Racing II has very good controls, the lag makes it barely playable.
  • Performance is not as good as without mirroring. The A5 SoC CPU is a really powerful piece of technology, but when forced to compress full screen and send it over WiFi, it’s processing power suffers. You will not see it in simple programs like Keynote or Safari, and surprisingly, neither in Infinity Blade 2. Most 3D-intensive games will stutter, more or less, as the A5 will try to do its best and run both the program itself and compress the output stream. Real Racing II works, but the animation slows down in more complex parts of the track. Dungeon Hunter III is playable, but the stuttering is more less noticeable.
  • Mirroring support is still on the devs side. By default, iPad will stream a 1024×768 image, which leaves black areas on the left and right part of the HDTV screen. If the application developer added further support, the resolution can change to fill the whole screen. For example: in Keynote, the presentation is shown on the HDTV, while on the iPad screen the presenter can see his notes and a miniature of the slide currently displayed. Real Racing II draws the game on the TV, while leaving telemetry (speed, position on the track, stats) on the iPad. Dungeon Hunter III will draw the same scene on both the mirror and the iPad screen, but image on the TV set will match the TV resolution instead of the default 1024×768.
  • Touch controls. When you’re watching the TV, you can’t see if your fingers are on the right parts of the screen. IMHO the best is the dual joystick approach used by many games. The virtual joysticks are usually placed under thumbs, so one doesn’t need to constantly watch if the fingers are placed accordingly. Gesture controls like in Infinity Blade are almost as good: you feel where the iPad is, so you just slash the gestures on the screen as usual. Fruit Ninja is a bit more tricky, because you need not only to draw the gesture, but also aim correctly to slash the fruits. Accelerometer control in Real Racing is probably the best one to play games with mirrored screen: all you need to do is tilt the iPad.
    When it comes to pressing virtual buttons, matters complicate: you have to peek at the device every time to see if what you are about to press is the button that you really intended to press, and not the one next to it.

Summary

While Apple TV in itself works rather well, including the AirPlay features, wireless mirroring is not that great. It’s OK when you want to show a Keynote or a movie from your iPad on the TV set. It just works out of the box and is really easy to set up. Some games are playable too, but the performance is noticeably decreased. Because of this, WiFi mirroring is more of a gadget rather than an actually useful feature.

Infinity Blade II review

On 1st of December, Chair Entertainment Group has published a sequel to its flagship and critically acclaimed iOS game called Infinity Blade. The second iteration has the same praised sword combat mechanic as the first part, but has been enhanced with more features, so it is no longer a “dodge-slash” game, which many reviewers saw as boring and repeatable.

>> Read more here.

Infinity Blade II
Infinity Blade II

A bug in iOS results in poor battery life

It seems a lot of people is displeased with the battery life of the new iPhone 4S. Unfortunately, the problem is not limited to the new iPhone users: other devices have been impacted by the problem as well. My iPhone 3GS with iOS5 is almost half discharged after a day on standby. I blamed it on the battery age at first, but many other people have started complaining about the same issue.

I did have a similar issue with my iPhone 3G at some point – when one of the processes kept running on the CPU. This issue looks similar, but is related to Location Services. In iOS5 Apple has divided System Services from other apps, and one of them seems to be the problem – the Setting Time Zone service. If you enable the Status Bar Icon, it will constantly show near the battery icon, meaning that something is using Location Services all the time. Disabling the Setting Time Zone service seems to fix the problem.

Location Services on iPad Location Services on iPhone

Trouble with installing iOS 5

I have always updated my iDevices just after the new firmware was available, and never experienced any problems. Unfortunately, installing iOS 5 was not as smooth ride as I expected it to be.

To my surprise, iTunes has reported errors 3004 and 3200 several times, and my iPad remained stuck in DFU mode. I have quickly googled to check if none has similar issues to mine and read several posts on forums. People suggest to add a manual entry for Apple’s gs.apple.com to the hosts file.

Unless you have jailbroken any of your iDevices, just be patient and keep trying every now and then – it will update at some point. If you did jailbreak any device on your computer, it is possible that the jailbreaking tools has added an entry to the system hosts file.

To check if your computer is affected:

  • Go to C:\Windows\system32\drivers\etc\hosts
  • Remove any entries regarding gs.apple.com

Once done, just keep trying to restore your iDevice every few minutes.

 

iOS 5 goes public on the 12th of October

Most Apple fans have mixed feelings after yesterdays press conference, mainly because intead of iPhone 5 Apple will serve a slihgtly updated iPhone 4S. But fear not, iOS 5 and iCloud are coming soon. Scott Forstall did not say much about the new system itself, but we know when it arrives in iDevices: 12 of October. Golden Master release has already been released for developers.

Most important features of the new iOS:

  • Notification Center (non-disruptive notifications)
  • Reminders (time and location based)
  • iMessage (instant messenger for all iDevices)
  • WiFi sync (no need for cables anymore)
  • Newsstand (for those who like reading newspapers on iPad)
  • split keyboards (great for thumb-typing on iPad)
  • AirPlay mirroring for the iPad 2 (and for iPhone 4S too)
  • Siri voice recognition (for iPhone 4S only)
  • Wireless activation (no need for iTunes)
  • OTA iOS updates

iCloud storage will provide a free 5GB (which is now a de facto standard for most personal clouds – same as Windows Live Mesh and Ubuntu One). The most important feature is however automatic push synchronistation between all iDevices.