如何通过Xcode / Swift使链接自动在iOS中打开Safari应用程序(不在本地)?

问题描述 投票:0回答:1

我正在将Snap SDK集成到我的应用中,并使用Snapchat登录,因此需要打开一个野生动物园网页。 SDK会自动完成此操作,但这会在应用程序中以弹出方式在本地打开safari。我不希望在登录过程结束时发生这种情况,该页面会提示用户“继续”,如果在safari应用程序中执行此操作,则会将用户带回该应用程序,但是如果在本地执行该操作则不会(因为应用已打开)。这非常不方便,因为用户可能会感到困惑。我的代码仅调用登录名,但它与我的Info.plist的照片一起发布在下面。如何使其无法在本地打开?

代码:

@IBAction func loginButtonTapped(_ sender: Any) {
    SCSDKLoginClient.login(from: self) { success, error in
        if let error = error {
            // An error occurred during the login process
            print(error.localizedDescription)
        } else {
            // The login was a success! This user is now
            // authenticated with Snapchat!
        }
    }
}

Info.plist

ios swift xcode safari info.plist
1个回答
0
投票

确保已将以下内容导入到ViewController:

import UIKit
import Social
import SafariServices

这将直接打开Safari,而不是野生动物园弹出窗口。应该说,Apple希望用户不必在登录时离开应用程序,而弄乱这些机制可能会导致您的应用程序不被批准。

guard let url = URL(string: "https://stackoverflow.com") else { return }
UIApplication.shared.open(url)
© www.soinside.com 2019 - 2024. All rights reserved.