• Tag Archives iOS
  • Want Privacy Protection or Ad Blocking on the iPhone? Too Bad

    I’m an iPhone user, and I love it, I have to admit. I’ve had a fair amount of experience with Android devices, and I am not nearly as fond of them. But that doesn’t mean I am not occasionally envious of a feature of Android phones. Like, for example, browser plugins.

    On the Mac, I use three browser plugins on a regular basis: 1Password and Ghostery more or less everywhere, and AdBlock rather selectively. (I try not to deprive web sites of ad revenues unless their ad layout is horrible, their page takes forever to load, or one of their ads does something egregious, at which point I turn on AdBlock for that page. I try not to be a bad person, but I am definitely not a font of patience.)

    On the iPhone, I can use the built-in password storage on Safari, which works for maybe 75% of the web sites I browse to, and task-switch to the 1Password App to grab a password (which is amazingly irritating, but if I only have to do it once in a while I can live with it. But for the other two, there’s just nothing you can do to make Safari do what you want, short of jailbreaking your phone, which is too much of a hassle for too little payoff for me.

    There are, however, two alternate browsers for iOS. Neither of them purports to solve both problems: you can choose, Ghostery’s privacy protection in an iOS browser, or AdBlock’s ad protection on iOS.

    Alas, whatever their benefits, as far as execution is concerned they’re both awful. I couldn’t possibly use either one as my main browser on iOS.

    Ghostery

    Ghostery promises to protect your privacy, by blocking all of the web bugs and similar items that usually track you wherever you go on the internet. It does this by knowing what parts of any given web page that you visit are being used to track you, and simply not loading those bits. It works very nicely as a browser plugin. As an app, it’s buggy and has serious usability issues. And this is in version 1.4.3, of an app that has been around for three years. If they haven’t been fixed by now, it’s hard to believe that the experience is going to get a lot better anytime soon.

    First things first: it does work. It is, of course, using the standard built-in browser, so the way it loads pages and displays and runs javascript and such isn’t much different from the standard Safari browser. Which is fine by me: I find that Safari does fine for me for most purposes on iOS. If Ghostery were to just work like Safari, except blocking the web bugs, I would be recommending it far and wide.

    Alas, it doesn’t. It has serious interface issues, and serious bugs. First, the interface:

    • Ghostry uses tabbed browsing on the iPhone. With real tabs. The screen is far too small to make this practical, so most of the time you won’t be able to tell what is in each one, and you may or may not be able to actually select the right one without accidentally closing it.
    • There is a button bar across the bottom of the screen, a la Safari, and it vanishes when you scroll down, also like Safari. But Safari’s reappears when you scroll up a little bit, and stays there until you scroll down again. A very elegant choice: you can get it out of the way, and it stays out of the way when you’re reading downward, but you can also see it when you want it, without even picking up your finger. Ghostery’s reappears when you scroll up and then immediately starts to fade. It fades fast enough that it is literally impossible for me to press a button on it, in fact, so the only way I can use the button bar is to scroll all the way to the top of the page, where it pops on and stays on. Infuriating. You can see it, momentarily, but not touch it. (Perhaps this is a bug, but if so, it’s hard to imagine that it hasn’t been noticed.)
    • Ghostery has a regular URL bar, and it is accessible just as Safari’s is. But it doesn’t auto-complete things in your bookmarks, or in your recent history. I’ve written autocomplete code before, the entire thing is less than 20 lines long.
    • Ghostery has no way to view your own browser history. What? Really?
    • Ghostery has a bookmark menu, but there is no way to add a bookmark from it. Instead you add it from a different menu.
    • When you click a link, the browser scrolls all the way to the top of the page you’re on, and then loads the new page. And then if you hit the ‘back’ button you end up at the top of the page, instead of scrolled to where you were already. So you can’t read a long article, check out a link in it halfway through, and then go back to the article, without spending a minute or so scrolling down and trying to find the spot you’d left off at.

    And then there are the bugs:

    • Ghostery’s cancel button only works intermittently. Even worse, the ‘back’ button is disabled when a new page is being loaded. So if a page takes a while to load, you’re often stuck waiting for it, unless you close the tab. And lose your history. That isn’t available any other way. What? Really?
    • There are several pages that Ghostery simply will never load. They start loading, but they never finish. And these are pages that load just fine in Safari on the Mac with the Ghostery extension installed, and the extension the presence of zero trackers. And they load just fine in Safari on iOS. But Ghostery will simply never load them at all, no matter how long you wait. Which means that you lose the history for that tab, since there is no way to cancel. One such web site is the Girl Genius web comic, a long-time favorite of mine.
    • The browser itself works fine in landscape mode, but the bookmark list is stuck in portrait.
    • When you hold your finger down on a link, a menu comes up, just like Safari. Except unlike Safari, around 50 percent of the time, the menu won’t come up no matter how long you hold your finger down or how many times you try. It doesn’t seem to be a factor of the link itself. It just seems like sometimes a loaded page doesn’t get the click-and-hold functionality.
    • When you hold your finger down on a link and the menu does come up, if the browser is in landscape mode, the buttons are out of whack: each button performs the function of the one above it, rather than its own. So if you click ‘Open Link in New Tab’, it instead opens the link in that tab. If you click ‘Copy Link’ it opens in a new tab. And so forth. This has been the case for at least two versions now. Hard to imagine that it didn’t get noticed, and fixing it would be either a one-line code change or a change in interface builder.
    • On many pages, changing the phone’s orientation changes the spot you’re looking at. If you change back, it does not move back to where you were before, it moves you to yet another spot in the page. Not only is this frustrating when you change orientation intentionally, it is maddening when you do so accidentally, and then change back.
    • If Ghostery is shut, and you open another program or two, sometimes your iPhone will run out of memory and shut down background apps, including Ghostery. What Safari does if it gets shut down is saves the current page and the history for each ‘tab’, then reloads the current page when it gets relaunched. What Ghostery does is just saves the current page. So your history is lost. You know, the history that you can’t view?
    • Sometimes when Ghostery gets shut down, as above, it doesn’t even save your current pages. Instead, you get (say) five tabs containing the “duck duck go” search engine, instead of the tabs that had been there before. For no identifiable reason.
    • If Ghostery crashes, the same things happen. (I will say, though, that at least on an iPhone 5s, Ghostery rarely crashes.)

    Also, a special shout-out to Ghostery’s “WiFi Connection Protection”. The idea is that you can use Ghostery’s protection in other browsers besides the Ghostery browser itself, by using a proxy that does the blocking for you. But it only works on WiFi, and it “has performance issues” (read as ‘is unusable’) if you try to use it with Safari. So if you want to use it, they recommend you use it with the Ghostery browser (which… WHY?) or the Chrome browser. Perhaps I’ll try that sometime, although I’ve heard it comes with its own data collection, so I’m not sure why I’d want to use a browser that sends data back to Google in order to avoid having data collected about me by other companies.

    Next time I’ll talk about AdBlocker.