ViewController.swift: 导入UIKit 导入BluemixAppID 导入BMSCore
类ViewController:UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
class delegate : AuthorizationDelegate {
public func onAuthorizationSuccess(accessToken: AccessToken, identityToken: IdentityToken, response:Response?) {
}
public func onAuthorizationCanceled() {
}
public func onAuthorizationFailure(error: AuthorizationError) {
}
}
@IBAction func log_in(_ sender: AnyObject) {
AppID.sharedInstance.loginWidget?.launch(delegate: delegate())
}
}
AppDelegate.Swift func application(_ application:UIApplication,didFinishLaunchingWithOptions launchOptions:[UIApplicationLaunchOptionsKey:Any]?) - >布尔{ //在应用程序启动后覆盖自定义点。
// Including Bluemix App ID Information for Authentication.
AppID.sharedInstance.initialize(tenantId: "mytenantID here ", bluemixRegion: "AppID.REGION_US_SOUTH")
return true
}
// Bluemix Application Instance Code
func application(_ application: UIApplication, open url: URL, options :[UIApplicationOpenURLOptionsKey : Any]) -> Bool {
return AppID.sharedInstance.application(application, open: url, options: options)
}
单击登录按钮时,我可以看到AppID.sharedInstance.application ....代码已执行但登录小部件未加载。我看到以下错误,UI再次返回登录按钮屏幕。
错误: [INFO] [bmssdk.AppIDRegistrationManager] ensureRegistered(callback :)在/Users/kosalan/Documents/GitHub/PS_1_FrontIOS/Pods/BluemixAppID/Source/BluemixAppID/internal/RegistrationManager.swift:36 ::注册新的OAuth客户端 [ERROR] [bmssdk.AppIDRegistrationManager]在/Users/kosalan/Documents/GitHub/PS_1_FrontIOS/Pods/BluemixAppID/Source/BluemixAppID/internal/RegistrationManager.swift:39中的ensureRegistered(callback :) ::无法注册OAuth客户端 [错误] [bmssdk.AppIDRegistrationManager] launchAuthorizationUI(accessTokenString:authorizationDelegate :) in /Users/kosalan/Documents/GitHub/PS_1_FrontIOS/Pods/BluemixAppID/Source/BluemixAppID/internal/AuthorizationManager.swift:51 ::无法注册OAuth客户端< / p>
答案 0 :(得分:0)
尝试删除bluemixRegion上的引号,更改:
bluemixRegion:&#34; AppID.REGION_US_SOUTH&#34;
到
bluemixRegion:AppID.REGION_US_SOUTH
AppDelegate.Swift func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { // Override point for customization after application launch.
// Including Bluemix App ID Information for Authentication.
AppID.sharedInstance.initialize(tenantId: "mytenantID here ", bluemixRegion: AppID.REGION_US_SOUTH)
return true
}