【发布时间】:2016-09-13 15:00:42
【问题描述】:
我正在尝试使 iOS 的 auth0 锁定与 cordova 一起使用。它似乎可以工作,除非我在插件完成后关闭视图时做错了。它被解雇了,但我不能再与科尔多瓦视图交互。它变得没有反应。
插件代码如下:
@implementation lockPlugin
-(void)init:(CDVInvokedUrlCommand*)command {
A0Lock *lock = [A0Lock sharedLock];
A0LockViewController *controller = [lock newLockViewController];
controller.onAuthenticationBlock = ^(A0UserProfile *profile, A0Token *token) {
CDVPluginResult* result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK
messageAsDictionary:@{
@"idToken":token.idToken,
@"refreshToken":token.refreshToken,
@"tokenType":token.tokenType,
@"accessToken":token.accessToken,
@"email":profile.email
}];
[self.commandDelegate sendPluginResult:result callbackId:command.callbackId];
[self.viewController dismissViewControllerAnimated:YES completion:nil];
};
[lock presentLockController:controller fromController:self.viewController];
}
@end
【问题讨论】:
-
您在 iOS 上使用了 Auth0,而不是在 Cordova 上使用了 Auth0。我无法找到 Cordova 与原生 iOS 兼容的示例,并且可能存在一些问题。你能详细说明你为什么选择这个选项吗?
-
@RoyFalk 我希望登录时具有原生外观。奇怪的是,有时它工作得很好。
-
如果您在 Xcode 上打开项目,您会在控制台上看到一些消息吗?
-
@jcesarmobile 它会关闭锁定视图,但随后我无法与科尔多瓦交互。没有错误,Safari 开发工具仍然可以工作,所以我仍然可以在控制台中执行 js。
-
本机错误不会出现在 safari 控制台上,您可以打开 Xcode 项目并尝试从那里运行吗?它在平台/ios上,只需双击 .xcodeproj
标签: ios objective-c cordova auth0