问题标签 [apple-sign-in]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
5436 浏览

apple-sign-in - ASAuthorizationController 因现有设置流程而失败

Apple 的示例说,一旦登录视图出现,就会使用下面显示的代码执行授权尝试。当代码运行时,我得到这个无用的错误:

[核心] 授权失败:错误域=AKAuthenticationError Code=-7001 "(null)" UserInfo={AKClientBundleID=com.....SignInWithApple}

我确实在共享 Web 凭据中存储了一些可以抓取的内容。这是我正在使用的代码:

我在这里错过了一步吗?

0 投票
1 回答
892 浏览

java - 如何使用模数和指数为 Sign In with Apple 创建公共 RSA 密钥?

我正在为 IOS 应用程序中使用的 Apple 登录功能实现服务器端部分。

为了验证 JWT,我需要使用公钥。我现在坚持如何从我从 Apple 获得的模数和指数创建公钥。

0 投票
5 回答
5636 浏览

ios - 使用 Apple 登录:验证我的域无法正常工作

我在我的移动应用程序中集成了 Sign in with Apple 。我按照开发者门户中提供的配置步骤下载了apple-developer-domain-association.txt 文件并将其放在我的服务器上给定路径。在此处输入图像描述现在该文件正在从 Web 浏览器加载,但我无法在 Apple 开发人员帐户上验证我的域。它给了我一条错误消息“域验证失败”。

有人遇到同样的问题吗?如何成功通过验证

0 投票
8 回答
15982 浏览

ios13 - 带有名称和邮件范围的 ASAuthorizationAppleIDRequest 返回 nil 值

我正在使用 Apple 实现登录,并注意到返回的emailfullName属性ASAuthorizationAppleIDCredential仅在此 Apple ID 的第一次登录时填写。在所有后续登录中,这些属性为零。

这是 iOS 13 上的错误还是预期行为?

这是我用来启动请求的代码:

我在这个委托方法中收到了证书:

0 投票
1 回答
530 浏览

watchkit - SwiftUI - 在 watchOS 上使用 Apple 登录崩溃

我正在使用 SwiftUI 在 watchOS 上实现Sign in with Apple 。

由于WKInterfaceAuthorizationAppleIDButton不符合 View 协议,因此我将其包装WKInterfaceObjectRepresentable用于在 SwiftUI 视图中使用它。

我已经实现了一个协调器来处理按钮上的点击,它还充当注册过程回调的委托。

下面是我的代码:

每当我点击登录按钮时,应用程序每次都会崩溃并出现以下错误,

线程 1:EXC_BAD_ACCESS(代码=1,地址=0x74747572)

如果我的代码或我实现协调器的方式有问题,有人可以帮助我吗?

然而,上面的代码在 SwiftUI 中的 iOS 上可以使用ASAuthorizationAppleIDButton按钮

此外,如果我在 WatchKit 中使用 Apple 实现登录,它可以正常工作。

因此,我似乎缺少一些实现细节,希望对此有所帮助。

更新: 我搜索了EXC错误,大多数答案都指向非法内存访问是这些崩溃的罪魁祸首。

对目标动作崩溃的进一步谷歌搜索显示,如果目标从内存池中释放,则会导致崩溃。

那么任何人都可以帮助我如何将 Coordinator 保存在内存中而不自动释放它?

0 投票
1 回答
6797 浏览

ios - 使用 Apple 登录 - 不同行为模拟器 VS iPhone

我正在尝试使用 Xcode(Beta 11.0 beta 6)设置 Apple 登录。

在模拟器上效果很好,但是当我在我的 iPhone (iOS 13.1) 上运行它时,我没有得到相同的显示。

在模拟器上:

在模拟器上

在 iPhone 上:

在 iPhone 上

这就是我所说的“使用 Apple 登录”的方式:

根据我的调试,我知道在这两种情况下都会执行代码,并且在授权控制器中设置了电子邮件 + 全名范围。

我希望在这两种情况下都能看到使用苹果登录并询问我的全名以及是否想隐藏我的电子邮件......

但它只发生在模拟器上。在 iPhone 上,我只是“继续”,让我的脸认出来……就是这样。

在这两种情况下,这都是在以下情况下调用的:

但在模拟器的情况下,我可以获得

在我的 iPhone 上,我只能获得以下值

谢谢您的帮助 !:)

PS:在这两种情况下,我都尝试使用同一个 Apple 帐户进行连接,因此我尝试查看 Apple 配置,但我不确定是否是问题所在。

0 投票
2 回答
2441 浏览

ios - 使用 Apple 按钮登录 Apple 徽标显示很小

Apple 标志显得很小。我给 xib 中的 appleSignView 提供了 44px 的高度。

我正在使用的代码:

这是该按钮的默认行为还是我做错了什么? 截图在这里

0 投票
1 回答
2975 浏览

php - 如何用苹果授权码换取访问令牌?

我很难弄清楚如何使用 Apple 登录。文档很糟糕,失败的响应让我们一无所知。Aaron Parecki 的文章(https://developer.okta.com/blog/2019/06/04/what-the-heck-is-sign-in-with-apple)确实有点帮助,但我现在似乎卡住了.

首先,我使用 /auth/authorize 生成一个登录 URL,如下所示:

在与域验证和返回 URL 斗争之后,这将我带到 Apple 登录页面并在成功登录后返回到我的 redirect_uri。然后,我需要授权我使用 Guzzle 执行的令牌:

客户端密码是使用 Firebase php-jwt ( https://github.com/firebase/php-jwt ) 生成的,通过 jwt.io 有效:

但是,向 Apple 执行令牌请求会返回 400 错误并显示消息“invalid_client”。我无法确定我的客户端 ID/密码是否错误,或者重定向的代码是否无效。有人可以指出我正确的方向吗?

编辑:请注意我重写了 JWT 类,允许使用 ES256。有关更多信息,请查看此开放拉取请求

0 投票
1 回答
2349 浏览

objective-c - 未能获得 credential.state 和 getCredentialStateForUserID

我无法从 getCredentialStateForUserID 方法中获取 credentialState,而其他成员返回得很好。

我在 iPhone 8、iOS 13 模拟器上运行了该应用程序。

状态:(空)

realUserStatus: 1 (ASUserDetectionStatusUnknown)

为什么我会收到这个不合适的值?任何其他值都会很好地返回。

我收到了这个错误

2019-09-09 16:28:05.859082+0900 AppleSignin[57581:3353025] [核心] 凭据状态请求返回错误:错误域=AKAuthenticationError 代码=-7001“(空)”

0 投票
2 回答
1206 浏览

ios - Apple Authentication Button 使用 expo-apple-authentication 包不显示

我正在尝试使用expo-apple-authentication包在我的 iOS 应用程序中实现 Apple 登录,但我无法显示按钮。即使我使用与文档完全相同的代码:

值得注意的是,对 AppleAuthentication.isAvailableAsync() 的调用返回 true。

我正在模拟器中测试它。它不应该在开发环境中工作吗?那我该怎么测试呢?