I have completed the third and final version of the document describing our 'refresh' problem. You can find it at the end of this post or in the Word-formatted Google document shared as follows:
https://docs.google.com/document/d/1JS_6zRhdP6grxG-UMGnTcBRRIrswnX-XZbP2QZT-dL4/ edit?usp=sharing
Thanks to all who have contributed their perspective on the issue and to those who provided feedback on earlier versions of the document. I have tried to include the points raised from earlier revisions and have also added some caveats regarding recreating the bug. However, I have become less concerned about the reproducibily issue given that affected readers/viewers will probably recognise the problem immediately.
The document has become longer than I would have liked and I apologise if not every member of this forum feels their particular grievance has been adequately represented. However, these should be instances of the same basic bug.
I will now be forwarding this to iPad Today and MacWorld. I have created a simple editable spreadsheet in Google Docs:
https://docs.google.com/spreadsheet/ccc?key=0Aqqqa48cytHPdEN0Zm04QXZUYlFLWURyNGF %20nYkUwcUE&usp=sharing
This is our iOS 7 Refresh Bug Publicity Tracker. If anyone sends the document (or their version of it) to a tech site, it would be helpful if they could update the spreadsheet. It should be completely open to all so feel free to add any more columns that you feel may be needed. This will allow any of us to keep track of what others are doing and how they are getting on.
Now let's see what happens!
Chris
<clip revision="1.3">
Given your involvement in all things iPad and iOS-related, I thought you might be interested in a serious iOS 7 bug that has somehow managed to escape the attention of the tech press. This bug is widely discussed in the following Apple forum (https://discussions.apple.com/thread/5380124) and has reached over 20 pages of discussion and references at least two other threads discussing the same problem.
The problem
The issue is an inability of iOS 7 - on iPhones and iPads - to adequately maintain the state of apps that have been suspended when you swap to another app. When returning to that suspended app, the state of the app is not always fully restored. This worked fine in iOS 6. Some examples:
- When returning to a Safari page after swapping to Mail to get some info, the page will often refresh taking the user to the top of the page. This is particularly annoying when returning to a partially filled form in Safari only to lose all the data.
- One user reports starting to enter a new shipping address in the Amazon app and then going to Contacts to lookup an address. On swapping back to the Amazon app, the user had been returned to their shopping cart and the checkout process had been cancelled.
- Others have reported problems returning to Google Maps when driving. Taking a call or swapping to another app will reset the route.
The list goes on with an increasing number of very frustrated users. The problem appears to be a memory management issue and if you reset or turn the device off and on again, it seems to clear the memory giving improved app swapping until things start to degrade again. This is why each minor iOS 7 upgrade has appeared to fix the problem for a short time - it's the memory reset that does it. There have been suggestions that the older devices that only have 500MB memory are particularly vulnerable to the problem.
(Note that this 'refresh' problem has no relation to the 'Background App Refresh' option that can be configured in Settings)
In general, it is heavy iOS users swapping between many apps and switching between multiple tabs in Safari that most often see the problem. More casual users of their iOS-based devices may seldom see this issue or may not perceive this as a problem whereas heavy users will find that it dramatically affects their productivity.
Recreating the problem
It is likely that heavy users will have recognised the described problem immediately, even if they have not been able to accurately define it before, and probably don't need instructions on how to recreate it. Conversely, casual users may have seldom seen the problem and may not be interested in recreating it. Although both these points suggest this section may be redundant, for completeness I will go ahead anyway.
In a variation of Murphy's Law, faulty software behaves itself when you least want it to. With this in mind, it might be helpful to show some scenarios that typically display the problem.
Most of the problems that occur appear to based around Safari which, for the demo, should be set up with 6 non-trivial tabs, e.g. Amazon, BBC News, eBay, Weather, Facebook, Wikipedia, etc. (i.e. not just minimalist Google pages). This is a typical setup for many users and will be referred to as the Safari Baseline. What interferes with the suspended apps is a sequence I have called the Safari Shuffle:
- Swap to Safari
- Switch between each of the 6 tabs, refreshing each tab as you go (using the curved reload icon if it doesn't happen automatically)
Here is a simple example using Safari and Calendar - standard apps on any iOS-based machine:
- Close all apps.
- Open Safari and Calendar
- Set up the Safari Baseline
- In Calendar start to create a new event. Partially populate the form and then swap to Safari as if to search for an address.
- Perform the Safari Shuffle
- Swap back to Calendar. The entry disappears.
Consider the following two more examples:
- Maps: Create a route; perform the Safari Shuffle; return to Maps; the route has been reset.
- Videos: Start watching a movie; perform the Safari Shuffle; return to Videos; the app has reset to the list of movies and you must reselect the film.
The Safari Shuffle is involved in the loss of state or the loss of data in numerous other apps but I have concentrated on a few Apple apps to avoid the argument over whether it is third-party apps that are to blame. Returning to an app after a Safari Shuffle can also result in an annoying delay while the app refreshes itself (an open book in iBooks for example) though this is not as serious as the loss of state and data described above.
Some users, including me, have found the refresh problem often occurs when swapping between two apps regardless of whether Safari is involved. Others, however, have found that more open apps need to be open and/or more tabs need to be open in Safari before the problem can be reproduced on demand and it may be that these users have the newer devices with 1GB of RAM, double the memory of older generation devices.
Why does the issue have such a low profile?
There are two main reasons why the profile of this problem is not greater:
- It is a hard problem to describe so users often fail to find appropriate forums via Google searches.
- The problem manifests itself mainly with power-users, i.e. those users who frequently swap between apps. This will often be the case for those who use their devices for work. Many have reported that their devices are no longer fit for business use.
In general it appears to be power-users who are IT-literate enough to know how to describe the problem who are reporting it.
Apple's response
A number of us on the Apple forum have been to Genius Bars for advice where we have been encouraged to carry out a reset-and-restore. In my case it was a last-resort DFU reset (Device Firmware Update). No Genius has yet to admit encountering the problem before. The reset-and-restores failed to fix the problem.
Many more of us have contacted Apple support to log the problem. At least one has been requested to provide logging information but not one of us has had a satisfactory response back from Apple on this. Many of us have had no response at all.
It's not just older machines
Interestingly, according to a recent study, the iPad 2 accounts for 38 percent of all active iOS tablets and Apple continues to sell the iPad 2 so one would assume that iOS 7 would have been tested against such models and would be expected to run on them satisfactorily.
However, users have reported similar problems with the iPad Air and new iPad Mini. One user had an iPad Air on iOS 7 exhibiting these problems and a bug-free iPad 2 on iOS 6. He then upgraded the iPad 2 to iOS 7 and now has the same issues.
Will it be fixed in the next release?
Unlikely. Initial reports on Beta versions of iOS 7.1, due for release in March 2014, suggest that Safari has been fixed so that the tabs maintain their states thus preventing forms from losing their data when swapping back to them. Apparently, however, the general 'refresh' problem is still there, i.e. other apps are often unable to maintain their states.
What has happened to Apple?
It used to be that Apple kit just worked. After Steve Jobs died, we have seen decreased innovation and an increase in the number of bugs in iOS releases. iOS 6 was riddled with problems including the infamous Maps debacle. iOS 7 has not been much better; it has been equally bug-ridden and has been associated with performance problems on older machines. Many of the iPhone users on the forum are planning to jump ship after their contracts expire. If it were not for the fact that there is still no viable alternative to the iPad Air, I would be looking elsewhere too.
It used to be that Apple was proactive. Now they appear reactive; perhaps the artificial deadline of including iOS 7 with the new phones led to sloppy coding and poor testing. Whatever the reason for Apple's drop in standards, it shows cynical disregard for its customers.
Will Apple become the next Blackberry? I certainly hope not but I do know that, along with many others, my confidence in Apple's ability to deliver quality software has taken a large knock.
</clip>