Comments (20)
Really!? Works on my iphone. The only issues I'm aware of on iOS are that key generation takes too long and lacks user feedback, and that the dialog needs to be visually optimized for mobile devices.
James, would you mind appending the precise steps to reproduce the issue that you're seeing? One case where such symptoms could occur is if you clicked to login, the dialog popped up, and then you reloaded the page.
curiously -- lloyd
from persona.
For iOS, I traced it down to using iScroll and having the sign in button inside that scrollable region. Apparently it was capturing some events and returned to default handlers in a way that Safari thought it was a popup and blocked it. So the fix was to not use iScroll for that region.
That fixed the pop-up, but after putting in my name and password, I waited for a while, and then eventually there was an error in the console:
https://browserid.org/dialog/crypto-stubs.js
JavaScript execution exceeded timeout.
I am using an iPhone 3GS, so maybe on an iPhone 4 it goes faster, and you already mentioned you had some thinking around how to reduce the crypto time, so I think you already have a handle on this issue.
The removal iScroll did not fix the Android issue, I'll keep looking at that, and I'm going to be trying it on an android phone that may have a different software setup. I'll post any results into this ticket.
from persona.
Looked more on Android 2.3.4 with Firefox 5 Mobile: the demo beer application does not work, and when I did some local debugging in my app, it looks like the window.open in _open_window() fails. Maybe Fx 5 is really strict about popup windows even, ones as a result of user action?
I wonder if makes sense to allow an API to getVerifiedEmail where my app could call it with an URL to return to once verification had been received, and then allow navigation away from my page in the current window to complete the browserid process, and then when done navigate back to that URL that was passed to getVerifiedEmail.
The core issue of popup windows on Android probably needs more investigation first, but just writing out findings as I find them.
from persona.
I got mobile firefox to work by not passing window properties to the window.open call, and did a pull request for that change
That helps pop the window on mobile firefox, but after authentication is done, the window does not disappear on its own. I had to manually close it and then went back to my web app and it was signed in/had the verified email.
Also, the sign in UI, with the Sign In and Cancel buttons on the bottom are difficult to use on a mobile device. I know mobile was not the initial target, just listing out items as I come across them.
from persona.
As it stands, tgavankar and I can't get BrowserID to work at all for any mobile browser.
- Android stock browser seems to freeze at a "please wait" screen for some devices, though it occurs on all the smartphones that I've tested our code on.
- Firefox Mobile doesn't load the login popup at all
- iOS closes the keyboard after a second or so of focus on the email/password field, making it impossible to enter credentials.
This is testable on our site: http://munchylunchy.com/
from persona.
@stomlinson Hey, will you have a moment to look at this in the coming day or two?
from persona.
@jrburke - thanks for the debugging, I am going to start on fixing this next week.
@lloyd - What all devices do we need? We have been approved for submitting a bug to get what we need.
from persona.
Verifying that this is not working on Android 2.3 default browser, it opens BrowserID, but closes the original window.
from persona.
Compatibility matrix will be placed on wiki at some point next week.
This issue should be reduced in scope to: does this work on iOS Safari and Fennec?
from persona.
We are working on iOS Safari and Fennec on both phones and tablets. Working on Honeycomb default browser, but not Gingerbread's.
from persona.
Is it wise to ignore Gingerbread? 2.2 and 2.3 are what most (if not all) Android smartphones are running by default.
from persona.
We most definitely want to support Gingerbread, it just hasn't happened yet with so many other high priorities.
from persona.
Froyo and Gingerbread's native browsers combined may very well be the most popular smartphone browsers. Is it not irresponsible to work on 3.x instead, which only makes up 1.5% of the market?
http://developer.android.com/resources/dashboard/platform-versions.html
Are there usage metrics that show a greater number of Fennec or Honeycomb users using BrowserID? What is the logic behind these priorities?
from persona.
@mattbasta - we didn't go after honeycomb, we got it for free with other changes we made.
from persona.
@mattbasta - in my above comment of "We are working on iOS..." I should have made that more precise and said - "BrowserID already works on iOS..."
from persona.
Ah, that makes more sense. :) Are those fixes in production? I'd like to test them with my applications.
from persona.
they definitely are on https://dev.diresworb.org (our development environment) which will be in production in < 2 weeks.
from persona.
Stock android browser on android 2.3 now a go. I need some testing on 2.2.
from persona.
Closing this as we have been supporting Android 2.2 for a while now.
from persona.
Catching up on older, closed issues with the Verified label.
from persona.
Related Issues (20)
- User having difficulty signing up to Mozilla Backpack HOT 1
- localhost app doesn't work in Firefox HOT 3
- bug in log rotation naming in new stage stacks HOT 11
- Primary button font is incorrect
- I cannot build it - (version not found: [email protected]) HOT 2
- Persona delivers the domain of an EMail-Address always with small letters HOT 3
- JavaScript strict warnings from login.persona.org
- Staging forgets registered accounts HOT 1
- "Action: Authenticating with Assertion" error HOT 1
- Verifying assertions on a client-side application
- No way to add an extra email address on login.persona.org? HOT 8
- Continue button isn't enabled when login form is autofilled HOT 1
- CODE_VERSION not being correctly added to build; uses fallback random value HOT 2
- Add an indicator that the loading screen has been displayed for testability
- Vertical line rendering issue on log in animation HOT 1
- Requesting IdP description document from modern HTTP server fails HOT 4
- Build fails due to `relative-date` being removed from NPM
- Undefined index: data in persona_verify() HOT 4
- Keeping Mozilla Persona Alive HOT 1
- Auto logout HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from persona.