【发布时间】:2018-10-10 06:41:09
【问题描述】:
我正在尝试实现 Square Connect iOS SDK,在实现并单击支付按钮后,它会打开 Square 支付应用程序并重定向到一个空白页面.. 你们有同样的问题吗?
我的应用委托有适当的部分:
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
guard let sourceApplication = options[.sourceApplication] as? String,
sourceApplication.hasPrefix("com.squareup.square") else {
return false
}
do {
let response = try SCCAPIResponse(responseURL: url)
if let error = response.error {
// Handle a failed request.
print(error.localizedDescription)
} else {
// Handle a successful request.
}
} catch let error as NSError {
// Handle unexpected errors.
print(error.localizedDescription)
}
return true
}
我在 Square 门户中创建了一个适当的 URL 方案。我的视图控制器也有正确的代码:
func charge()
{
// connect v1
if let callbackURL = URL(string: "myscheme://")
{
do
{
SCCAPIRequest.setClientID("xxxxxxxxxxx")
let amount = try SCCMoney(amountCents: 100, currencyCode: "USD")
let request = try SCCAPIRequest(
callbackURL: callbackURL,
amount: amount,
userInfoString: nil,
locationID: nil,
notes: "Purchase for cleaning",
customerID: nil, supportedTenderTypes: .all,
clearsDefaultFees: true,
returnAutomaticallyAfterPayment: true)
try SCCAPIConnection.perform(request)
}
catch let error as NSError {
print(error.localizedDescription)
}
}
}
安德烈
【问题讨论】:
-
我的应用代理有正确的部分:
code -
空白页是指它以空白视图打开您的应用程序,还是仍在 POS 应用程序中并且只是空白?你收到任何错误吗?您是否已登录 POS 应用程序?
-
我想通了,它实际上是在部署两个应用程序。因此,如果有人遇到相同的问题,请检查以确保您没有安装两个具有相同捆绑 ID 但不同应用程序的应用程序。删除这两个应用程序并重新安装 iOS 应用程序后,它工作得很好。
标签: square-connect