Firefox Focus – a free, fast and easy to use private browser for iOS
blog.mozilla.org
blog.mozilla.org
Isn't this similar to Microsoft when they were forced to allow a choice of browser, or do Apple get away with it because they allow alternative web browsers provided they use the iOS rendering system to actually display pages?
They bought out competitors, shutdown development on products afterwards, things of that nature.
Apple's lock on their iDevices is certainly an issue, but they haven't hit half the checkboxes MS pulled off at the time of the anti-trust case.
Edit for magnitude.
Microsoft's behavior was restricted because they were a monopoly. There were alternatives to Windows, but the court decided that they were sufficiently insignificant that Windows was effectively a monopoly. That changes the rules.
Windows market share at the time was about 95%, Apple's smartphone market share is in the neighborhood of 15-20%.
By virtue of Apple integrating the operating system with hardware, iOS has a defacto 100% monopoly on devices compatible with Apple's Ax series chips (e.g. A9 in iPhone 6s). There's nothing illegal about that.
The market for Ax series devices is now larger than the Intel-compatible PC market was at under consideration during the Microsoft antitrust case.
The question then is whether Apple's policies stifle innovation and harm consumers. I think the answer is "yes".
Back in the MS monopoly days, there were a ton of things people wanted to do where they had no choice but to buy Windows if they wanted to do them. Today, there is very little that people do which requires an iOS device. Apple has many closed features (the App Store, iMessage, iCloud) but open equivalents are available. Almost nobody is buying an iPhone because they need an iPhone in particular to do something. They're buying iPhones because they need a smartphone, and they prefer an iPhone.
I am very much not a fan of Apple's approach here, I just don't see anything illegal about it.
Apple already got in trouble for price fixing - a violation of the Sherman antitrust act. https://en.wikipedia.org/wiki/United_States_v._Apple_Inc.
Related to iOS and competition within it, see
http://fortune.com/2016/06/30/elizabeth-warren-apple-google/
http://www.thehill.com/opinion/op-ed/272399-time-to-prosecut...
Hopefully more to come from me on this topic...my channel here. https://medium.com/@ryanpollock
In this instance Apple and the other publishers probably did so specifically because they didn't have a monopoly on ebooks.
Sure, and equivalently Apple has a 100% monopoly on Apple devices. How does that make sense? One problem with anti-trust laws is that the market is not well-defined. Is the relevant market Apple phones? Smartphones above some price point? Smartphones at a price point? All smartphones? We can always pick and choose to make it seem like a company has a monopoly.
do you want your users to legally force you to change your product because it's not what they want?
But if you replace "users" with "Apple executives" and the end result is Firefox, Chrome, Edge, Opera, and anyone who cares to may create an unimpeded browser... then absolutely that voice should carry more weight than "Apple executives" on this occasion.
You'll see very different behavior in Chrome for Android and Chrome for iOS because the latter is required to use WebKit. There are some really big problems with the present situation. The web's fundamental promise of a cross-platform consistent runtime is basically broken, and consumers, developers, and businesses all suffer significant but mostly invisible harm.
The latter part of your response (after "Still") is a sensible statement, and in the future I'd suggest stating that directly, rather than tying it to misapplied legal terminology.
You absolutely have no rights to talk here, HN can ban you for no reason and it is not a violation of your freedom of speech in US. Just as HN has the right to ban your ability to use a specific browser to access the site.
Just as Microsoft has the right to limit Xbox games only on their Xbox platform, news network to block you from accessing their sites if they detected ad-blockers and so many valid situations.
You have absolutely no right to anything on any private properties either. Apple owns the platforms that these apps run on, they have all of the rights, not the app developers nor you. You and the app developers agree to Apple's terms when you decide to use their software (EULA and developer program's terms).
By the way, you have no rights to walk in any stores and tell them you want to use a different cart in their store because you think their carts suck.
The WebKit team is great. Look at all the web standards being worked on. Look at the ES6 progress. They are pushing the state of the web forward on iOS.
Now put some of that same energy in WKWebView. Open it up. We need more than just loadURL()
The whole point of having different browsers is to have competition (which means better performance/new features), but currently in the iOS world there is Safari and multiple reskinned Safaris.
That's not a valid reason. With per-app sandboxing. At worst a non-Apple native browser that escape the confines of the web page and be subject to app security.
That amounts to using "security" as an argument for not being allowed to do something with the reason as, "Because we're smart and you're not".
Safari has a special permission (entitlement) that allows it to compile JavaScript to native code. This is what their JIT does.
This is something that no third-party app has ever gotten. No JIT means slow JavaScript. No ASM.js, no WebAssembly.
I have mixed feelings about giving third-party applications (browsers) this permission. Bugs can lead to remote code execution, can lead to sandbox escapes, can lead to compromised devices.
This is a really tough one. Specially for apps that load random content from the web.
> Apps that browse the web must use the appropriate WebKit framework and WebKit Javascript
Original comment:
AIUI the only real restriction here is against executing downloaded code, but you should be able to still write your own competing engine as long as you use JavaScriptCore to execute JS. That said, you can't do out-of-process execution or JIT compilation, so your engine won't be as fast as WKWebView, which means it won't be competitive and so there's not much reason to go through all the effort of making a new iOS browsing engine if users aren't going to want to use it.
Apple should be able to sell iPhones the way they want.
http://appleinsider.com/articles/16/10/07/french-company-sue...
They cite performance and security control, and really, can you blame them?
The web is quite the wild west nowadays, and the WebViews they provide, while not ideal, cover most of the cases while offering a decent level of protection.
And I think that somewhere down the road Apple will open up, when the system is ready.
If I understand correctly any WebView's contents is completely readable by the app it's embedded in. Which means you should arguably never trust any app that opens it's own WebView for view links. For example if you use the QR-Code Reader App it opens QR codes that leads to websites into it's own WebView rather than just forwarding the link to Safari. So, if the QR code is for anything that asks you to login the QR-Code Reader App could be reading your password.
In other words, WebViews are not adding security they're removing it
Otherwise, Apple can claim perf and security but that's arguably false. Chrome on desktop is faster and more secure than Safari by nearly every measure. There's no reason to believe the same wouldn't be true of a real Chrome (not embedded WebView) on iOS
A big issue comes from potential 3rd party browsers not being hardened to browser exploits which could circumvent device security. It may not be able to break out of the browser's security sandbox but if the browser has access to your camera, photos, contacts, etc...
If you dislike the ecosystem so much, jump ship to the #1 mobile ecosystem, Android.
What am I missing? Apple popularity in the US is unusually high?
Considering how much consumers have invested in the Apple ecosystem across multiple devices, it's not reasonable to expect that consumers will switch to Android. Apple's customers are locked in.
The question is whether it's OK for Apple to prevent competition within iOS.
Are there any indications of how much of that delta is driven by the availability of sideloading?
Not sure if this is worth opening an issue over, but are you planning on supporting search engines other than google?
Seems like Duck Duck Go would fit well with what seems to be your mission with this project.
https://github.com/mozilla-mobile/focus/blob/49bda35aa3b9b9b...
Is it planned to have content blockers support in Firefox for iOS ?
Firefox is based on the WKWebView. Modern and Fast, but has a very poor (thin) API. It has zero options for interacting with the network stack, which is a requirement for content blocking. Bugs have been open since iOS 8, Apple does not seem to be interested or does not have the resources to surface more API. All the APIs are in WKWebView, just private.
Focus uses the older UIWebView. Slow, but better ability to interact with the network layer. Not ideal, but at least it is possible.
So to answer your question: We would have to replace WKWebView in Firefox for UIWebView. We've been very close to doing this in some form. But it is is big compromise in terms of functionality and stability. So I am not sure when and in what form that will happen.
Stuck between a rock and a private API.
For example: https://developer.apple.com/reference/networkextension/neapp...
We need a real solution. We need better WKWebView APIs. The requests are known. The bugs have been open since iOS 8. Two years.
For example, Firefox for iOS ranks exactly the same as Safari in speed benchmarks.
Great work!
I came expecting to be disappointed in the feature set or performance (hello, Brave I'm talking to you), and instead it's got everything I can think of and it all seems to work perfectly.
Well, I mean... it doesn't integrate with my password manager... yet. (=
Doesn't seem to be possible to turn it off (the instructions at https://support.mozilla.org/en-US/kb/send-anonymous-usage-da...: do not work, there is no such settings menu for "Klar by Firefox"?). Perhaps I'm getting an old version from my local App Store though.
> For a new install, the application sends an anonymous "attribution" request to the adjust servers. This request describes how the application was downloaded, for example, whether it was downloaded directly via the App Store or through a marketing campaign link. The data includes an advertising ID, IP address, timestamp, country, language/locale, operating system and app version.
> Firefox for iOS, Firefox Focus, Firefox Klar and Android will also occasionally send anonymous summaries about how often the application has been used. These summaries only include information regarding whether the app has been in active use recently and when.
> Additionally, Firefox Focus and Firefox Klar will also report what features of the application are being used. It will send an anonymous report containing the specific filters being selected and count how many times the search, browse and erase button is pressed.
(also from https://support.mozilla.org/en-US/kb/send-anonymous-usage-da...)
Per the instructions at the bottom: "If you are in the browser you may have to hit the Erase button first" - did you do this when looking for the settings?
Edit: I'm not being facetious or sarcastic.
Goes beyond just a browser.
---
Edit: I decided to do a quick test using panopticlick. Here are the results.
- Firefox with uBlock Origin and uMatrix: fingerprint appears to be unique. fingerprint conveys at least 17.47 bits of identifying information.
- Brave: fingerprint appears to be unique. fingerprint conveys at least 17.47 bits of identifying information.
- Chromium (plain): fingerprint appears to be unique. fingerprint conveys at least 17.47 bits of identifying information.
- Tor Browser Bundle: one in 77.02 browsers have the same fingerprint. fingerprint conveys 6.27 bits of identifying information.
Um…what? I'm on an iPhone 5! Not that ancient!
(Just found out that it's not compatible with my iPad 4)
Fun fact: I still have an iPad Mini 1 running some very ancient version of iOS that I use once in a while for single-page browsing. It gets the job done for very short sessions. I'm amazed the battery is still good.
I can also use this without worrying about mix ups that I sometimes end up with in other browsers where I use both private and non-private tabs.
Edit: Seems a bit slow. Need to use it more to get better measurements.
It appears they just took the Private Browsing component of Firefox for iOS and integrated it into the old privacy plugin Focus app, and renamed it Firefox Focus.
In any case, it has the same features it did before, so I'm okay with it. It does duplicates my Firefox app's functionality some, but oh well.
1) https://blog.mozilla.org/futurereleases/2015/12/08/announcin...
They the button in the bottom right opens the current URL immediately in Firefox (separate app) without a prompt or warning seems against the private browsing expectation I have.
Edit: also it appears swiping doesn't go "back" :/
* https://input.mozilla.org/feedback/focus
* https://github.com/mozilla-mobile/focus/issues
* https://mzl.la/2g23JeE (Bugzilla)
(You can login to Bugzilla with a Github account.)We have a bug on file for swiping:
"strategic partnership"
Focus deleted from device.
I was looking for the wrong about:config value. While you can't have private browsing mode be the default, it is in fact possible to enable tracking protection outside private browsing mode, so you can get these same benefits (privacy.trackingprotection.enabled in about:config).
Wish this would be exposed in the UI settings.
One omission that jumps out though is that this doesn't look like it has TOR integration/support, unless it comes with it's own onion routing and I'm missing it.
I'm not advocating for TOR by the way, it just strikes me that the instances where you would want a private browser are very likely the same instances where you don't want network intermediaries viewing your communications, no?
Same list as in Firefox and Chrome. (iOS feature, all apps get this for free)
Let us know if the Reddit API is incorrectly on a list. We can investigate if we have a little more info.
Some Google AMP sites don't load with all the privacy toggles on.
I was really looking forward to trying this browser and wonder what the hardware limitation is.
Anyone know why this isn't available on Android or desktop (Linux)? Technical reasons or is it due to not enough developer bandwidth to implement it (which is reasonable too)
https://github.com/mozilla-mobile/focus/blob/master/Blockzil...
Gee, thanks for assistance in getting to breitbart.com. WTF???
But if you accidentally press search, yeah, Yahoo/Verizon get it. And there's no opt-out or alternative search engines.
https://github.com/mozilla-mobile/focus/blob/master/Blockzil...
Further info:
1) Appears the Brave browser uses the same hardcoded suggestions list. Why have such a list?!
2) If you are really concerned about privacy this is still a bad option because accidental hit of Go/Search/Enter sends an incomplete address to Verizon/Yahoo -- with no choices to disable this or chose another destination.
But I agree that it's difficult to ask for even fundamental things like "give your users less memory-hungry programs" in times like these, when a chat client like Slack does almost nothing when other users complain about it using 1GB memory almost for nothing. We live in sadder times than I imagined 10 years ago, programming-wise.