Saturday, January 16, 2016

iOS 9 Spotlight fail fixed by killing background Reeder.app

iOS 9.2 Spotlight has been driving me crazy on my iPhone 6. I use search to start many of my apps, and at least half the time nothing would show up. I think this started with iOS 9.1, but it got worse with 9.2. I saw complaints about this on Apple Discussions, but I knew it wasn’t affecting everyone. There was something odd about my setup.

Of course restarting the phone would fix the problem, but only transiently. I tried various maneuvers to rebuild spotlight indices; for a time I though removing Contact search was the key. Sometimes disabling Spotlight search for all applications seemed to help — but then it would fail again.

Then I noticed something interesting. Sometimes, after entering a search string returned no results, if I waited a bit, canceled the original string, then reentered, I’d get part of the Spotlight results. Maybe not any of my apps, but perhaps Spotlight Suggestions would show up. Sometimes I’d even see the app list, or Spotlight would show the default “search the web” UI then refresh and show search results.

It almost seemed like Spotlight was trying to work, but something was slowing it down. Perhaps if it’s too slow to respond Apple’s iOS 9.2 code times out. So, even though I have ‘Background App Refresh” disabled, I wondered if a background App was interfering with Spotlight.

So I started emulating my #1 son and routinely swipe-closing (killing) background Apps. (Yes, I know this is supposed to be a bad habit. Except when it isn’t.) After I’d killed 20 or so Spotlight started working again.

With a bit of trial and error I found I only needed to kill one. I only had to kill my #1 most used iPhone app, Reeder 3 for iOS. Spotlight then worked every time.

I don’t think this is a Reeder bug. I suspect it happens when background apps are somehow tying up Spotlight indexing, even when indexing and background app refresh are both disabled for a specific application. Other apps may do the same thing, but since I follow hundreds of Feeds and have Reeder running constantly, I probably see this more often than most. I think there are multiple iOS multitasking management bugs going on here; I’m just glad to have a relatively painless workaround. If you are seeing this problem but don’t use Reeder then do experiment with killing other backrond apps.

Reeder.app has a Sync:Background Refresh setting that I’ve now made “manual” only. I’ll update this blog post when I find out if that works.

No comments: