当前位置: 首页 > 面试题库 >

使用GIDSignIn签名时出现“ URL方案com-google-gidconsent没有注册处理程序”错误

公良理
2023-03-14
问题内容

我已经手动将google sign in sdk集成到sdk中(不能与cocoapods集成),并且可以正常运行,但是在我运行项目时,登录后总会出现此错误:

2015-09-07 15:44:14.071 Contacts++[82438:4826277] LaunchServices: ERROR: There is no registered handler for URL scheme com-google-gidconsent-google
2015-09-07 15:44:14.071 Contacts++[82438:4826277] LaunchServices: ERROR: There is no registered handler for URL scheme com-google-gidconsent-youtube
2015-09-07 15:44:14.072 Contacts++[82438:4826277] LaunchServices: ERROR: There is no registered handler for URL scheme com-google-gidconsent
2015-09-07 15:44:14.072 Contacts++[82438:4826277] LaunchServices: ERROR: There is no registered handler for URL scheme com.google.gppconsent.2.4.1
2015-09-07 15:44:14.072 Contacts++[82438:4826277] LaunchServices: ERROR: There is no registered handler for URL scheme com.google.gppconsent.2.4.0

这就是我使用SDK的方式。

首先,我按照https://developers.google.com/identity/sign-in/ios/sign-
in?ver=swift中的
所有步骤进行操作。

程式码:
AppDelegate.swift

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {  
    // google
    // Initialize sign in
    GIDSignIn.sharedInstance().clientID = "<client id>"
    GIDSignIn.sharedInstance().delegate = self

    return true
}

func signIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError error: NSError!) {

    if error == nil {
        let userID = user.userID
        let idToken = user.authentication.idToken
        let name = user.profile.name
        let email = user.profile.email

        print(userID, idToken, name, email)
    } else {
        print(error.localizedDescription)
    }
}

func signIn(signIn: GIDSignIn!, didDisconnectWithUser user: GIDGoogleUser!, withError error: NSError!) {

}

ViewController.swift

 override func viewDidLoad() {
        super.viewDidLoad()

        // google plus
        //GIDSignIn.sharedInstance().clientID = clientID
        GIDSignIn.sharedInstance().uiDelegate = self
        GIDSignIn.sharedInstance().signIn()
}

可能是什么问题?我正在使用SDK版本2.2.0


问题答案:

您的实现没有问题。所有这些警告意味着未在设备上安装每个URL方案所引用的应用程序。

如果您正在模拟器上进行测试,那么您将始终得到这些错误。但是,如果您在设备上进行测试,则可以验证如果安装了相应的应用程序,则错误将消失。

例如,如果您的设备上装有Youtube应用,则不会显示以下行:

2015-09-07 15:44:14.071 Contacts++[82438:4826277] LaunchServices: ERROR: There is no registered handler for URL scheme com-google-gidconsent-youtube


 类似资料:
  • 我遵循一个关于将工件发布到Nexus的教程,并以一个简单的Java应用程序为例。提供了一个Gradle文件,用于更改。最后,它看起来是这样的: 当我使用命令时,我收到以下错误: Gradle版本:Gradle 7.4.2 我做错了什么?

  • 我的android apk证书丢了。我格式化了我的MacMini并升级到了新的MacBookPro。现在我无法使用旧的mac电脑。因此,没有机会检索旧密钥库。我还没有注册Google Play应用程序签名。如果我现在注册,我能更新我的应用程序吗? 这是我尝试在play store上更新我的应用程序时遇到的错误: 您上传了一个APK,该APK使用与以前APK不同的证书签名。您必须使用相同的证书。 我

  • 有没有办法用Google App Engine(Java)在Google Cloud Storage中创建一个带有签名URL的处理程序? 我可以成功地上传文件到buckets与签名的URL在我的Android(Java)应用程序,但我没有目前的方式执行额外的代码服务器端上传完成。

  • 问题内容: 我试图为类路径协议注册自定义URL处理程序,如另一个线程所述。这是代码: 该测试用例具有以下JVM参数: 该行正确输出,因此正在设置属性。但是,由于上面的调用将引发异常,因此它似乎没有生效。 如果我像注释行中那样显式提供处理程序,则一切都很好。但是,我不想明确提供它-它应该自动完成。 我究竟做错了什么? 问题答案: 我发现了问题。我使用的原始类路径处理程序类具有非默认构造函数。当然,因

  • 我有一个UWP应用程序,我想与另一个程序(有线广播)接口。Wirecast建议的方法是调用以下代码: 当我从UWP应用程序调用此代码时,我得到以下错误: 系统运行时。互操作服务。COMException:“使用CoCreateInstanceFromApp创建CLSID为{A416C15B-A073-4994-8DB5-87527A41B2FA}的COM组件实例失败,原因是以下错误:8004015

  • 您好,我在生成签名apk时遇到此错误: