私はSVProgressHUD
迅速なプロジェクトでフレームワークとして使用しています。iOS 8 で正常に動作しています。アプリで Facebook にログインしています。ログインを使用するたびSVProgressHUD
に、アプリ全体に表示されません。しかし、アプリを強制終了すると、起動SVProgressHUD
は正常に機能します。info.plist に必要なキーを既に追加しました。私は問題を理解することができません。どなたか解決策をお願いします。
編集:「loginbehaviour」をWebおよびSystemAccountに変更した場合。それは正常に動作しています。
環境
FBSDK
:- 4.8.0
XCode
:- 6.4、Swift 1.2
LoginViewController.swift
func loginButton(loginButton: FBSDKLoginButton!,
didCompleteWithResult
result: FBSDKLoginManagerLoginResult!,
error: NSError!) {
SVProgressHUD.showWithStatus(NSLocalizedString("LOGIN_PROGRESS_MSG", comment: ""))
if (error != nil) {
DDLogError("FB Login error: \(error.localizedDescription)")
SVProgressHUD.showErrorWithStatus(NSLocalizedString(error.localizedDescription, comment: ""))
} else if result.isCancelled {
DDLogError("FB Login cancelled")
SVProgressHUD.showErrorWithStatus(NSLocalizedString("Login cancelled", comment: ""))
} else {
DDLogDebug("FB Login success")
SVProgressHUD.showWithStatus(NSLocalizedString("FB_USER_FETCH_MSG", comment: ""))
returnUserData()
}
}
Appdelegate.swift
let fbLaunch = FBSDKApplicationDelegate.sharedInstance().application(application,
didFinishLaunchingWithOptions: launchOptions) // Added this method in didFinishLaunchingWithOptions method
も実施
func application(application: UIApplication,
openURL url: NSURL,
sourceApplication: String?,
annotation: AnyObject?) -> Bool {
return FBSDKApplicationDelegate.sharedInstance().application(
application,
openURL: url,
sourceApplication: sourceApplication,
annotation: annotation)
}
func applicationDidBecomeActive(application: UIApplication) {
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
LocationManager.sharedInstance.startLocationManger()
FBSDKAppEvents.activateApp()
//Send device token change
APNSManager.validateAndUpdateAPNSToken()
//Look for APNS payload in background if we have saved any
APNSManager.handlePendningAPNSPayloads()
}