Closed jflinter closed 8 years ago
Thanks so much for taking the time to write in, @jflinter :+1:
You are right! This is indeed not an App Extension API issue. So there are no code changes required in this repo. We have seen this issue inconsistently ever since we added Touch ID to the 1Password Extension.
I just checked our codebase and we do ensure that all of - [LAContext evaluatePolicy:]
calls are on the main thread. Since iOS 8 came out, we did file quite a few Touch ID-related rdars and a lot of them have been addressed by Apple. I'd love to be able to consitently reproduce this issue that you're experiencing so we can further investigate it and fix it if it's on our end or file a rdar. So could you please answer the questions below? It would really help us.
I look forward to your reply.
Cheers!
I'm able to reproduce it in the ACME app. It happens intermittently both there and in the app I'm developing; I don't have a way to reproduce it every time though.
Calling evaluatePolicy
on the main thread, while important, probably isn't enough here - you should also make sure you're not inside an animation block.
Thanks for getting back to me and for testing, @jflinter :+1:
I'm able to reproduce it in the ACME app. It happens intermittently both there and in the app I'm developing; I don't have a way to reproduce it every time though.
We did the same on our end and came to the same conclusion.
Calling evaluatePolicy on the main thread, while important, probably isn't enough here - you should also make sure you're not inside an animation block.
I just double-checked this in our codebase and there are no "explicit" animation blocks in which we call evaluatePolicy
. By explicit I mean block in our codebase. However, I suspect the iOS does some animations when presenting the app extension view controller.
Anyway, since we believe that this a problem that we have no control over, I just filed rdar://24607728.
Also, here's a sample app which emulates the evaluatePolicy
call we do in the 1Password app extension. Can you reproduce the animation glitch using this app's extension?
I'm not able to reproduce any of the animation issues with the sample app you sent me. That said, immediately after trying to do so, I was able to recreate this using the 1password extension.
Anyway, since we believe that this a problem that we have no control over, I just filed rdar://24607728.
Given the experience I just had; I'm almost certain this is a problem you have control over. This also makes sense logically - this issue is usually just seeing a "stuck" navigation bar in the middle of the screen. If you were absolutely certainly only calling evaluateContext:
when your extension's authentication view controller was done being presented, it wouldn't even be possible for this error to occur.
Thanks for getting back to me again, @jflinter.
I've just linked this issue to our internal bug and we'll keep investigating it on our end.
Since this issue is not an App Extension API-specific issue, I am closing it as invalid
.
If you have any other question, please do not hesitate to ask.
Happy Friday! :wink:
When opening the 1password extension in our app, the 1password authentication dialog often suffers from severe visual issues (usually taking the form of a double navigation bar). I suspect this is an artifact of calling
[LAContext evaluatePolicy:]
during a UIViewController presentation block. Unfortunately, this is likely an issue with the 1password extension itself (i.e. in the 1password app codebase) so I can't submit a fix for this directly. I'd recommend, for your fix, to ensure that the UIViewController that requests local authentication does so after it is certain it's finished being presented. (I'd also make sure it's doing that on the main thread).I'm experiencing this issue on the latest tagged release of this framework (1.7), and version 6.2.2 of the 1password iOS app. My integration with the extension is about as straightforward as can possibly be (calling
OnePasswordExtension.sharedExtension().findLoginForURLString()
in my app's only view controller, on the main thread), so I'm relatively certain this is an issue with 1password and not my app. I'm experiencing this issue on an iPhone 6s Plus.