我正在开发一个手机银行应用程序,只想将卡添加到Apple钱包。 这是我的代码:
Card *card = ...;
BOOL mayAddCard = [PKAddPaymentPassViewController canAddPaymentPass];
if(mayAddCard) {
PKAddPaymentPassRequestConfiguration *addRequest = [[PKAddPaymentPassRequestConfiguration alloc] initWithEncryptionScheme:PKEncryptionSchemeECC_V2];
addRequest.cardholderName = ...;
addRequest.primaryAccountSuffix = ...;
addRequest.localizedDescription = ...;
addRequest.paymentNetwork = ...;
PKAddPaymentPassViewController *vc = [[PKAddPaymentPassViewController alloc] initWithRequestConfiguration:addRequest delegate:self];
if(vc) {
[self presentViewController:vc animated:YES completion:nil];
}
}
我卡在这里:
BOOL mayAddCard = [PKAddPaymentPassViewController canAddPaymentPass];
// mayAddCard == NO
首先,我运行在模拟器和iPhone 6s(iOS 11(上,开发人员构建。我已经在开发者帐户中启用了商家 ID 和 Apple Pay 付款处理证书以及 Apple Pay 付款处理和钱包。但是,我的预配配置文件中没有该 Apple 私有权利。
我应该怎么做才能走得更远?
主要是,是否可以在测试版本上测试钱包的添加(无需上传到AppStore/TestFlight(?
似乎完全不可能。
根据应用内预配入门指南:
XII. 在应用商店发布前的测试
测试将通过使用生产环境进行。iOS 应用将在获得必要的批准后通过生产应用商店分发以进行测试。 需要注意的几点:
-
在测试之前,发行人还必须向 apple-pay-provisioning@apple.com 提供 Adam ID,即应用程序的数字 Apple ID。
-
出于测试目的的应用程序分发必须通过使用促销代码。有关使用促销代码限制通过App Store分发应用程序的更多信息,请查看此处。u2028
-
请务必在提交应用时选择"手动发布" 查看,否则可能会无意中将测试应用发布到 一般公众。
-
测试完成后,该应用程序可以公开 通过在iTunes Connect中选择"发布此版本"进行下载。 在应用程序包含后对应用程序进行了更改时 存储以进行测试,您需要在 iTunes Connect。然后,您可以将更正后的应用重新提交到应用 存储以供审批。请点击此处获取更多信息 这部分过程。
请注意,测试外部测试版目前不能用于分发应用内预配测试的应用。
您仍然可以将卡推送到苹果钱包,而无需使用应用商店或测试飞行。你必须点击苹果的沙盒(QA(环境。为此,您可以要求苹果提供配置文件以将您的设备钱包更改为沙盒。然后,您可以将测试卡推送到钱包(sanbox(。