我想集成文莫库付款到一个iOS应用程序。
我通过跟踪venmo github项目创建了一个演示程序。
根据对github项目的描述,下面是在浏览器中显示venmo应用程序/open venmo的代码:
- (IBAction)payButtonPressed:(UIButton *)sender
{
// App crashes here. Does not crash if I comment this line.
venmoClient = [VenmoClient clientWithAppId:AppId secret:AppSecret];
VenmoTransaction *venmoTransaction = [[VenmoTransaction alloc] init];
venmoTransaction.type = VenmoTransactionTypePay;
venmoTransaction.amount = [NSDecimalNumber decimalNumberWithString:@"5"];
venmoTransaction.note = @"Payment for something";
venmoTransaction.toUserHandle = @"Name";
VenmoViewController *venmoViewController = [venmoClient viewControllerWithTransaction:
venmoTransaction];
if (venmoViewController) {
[self presentViewController:venmoViewController animated:YES completion:nil];
}
}当我运行项目时,它会崩溃在方法的第一行。如果我把它评论掉,它就不会崩溃。
下面是它抛出的错误消息:
由于“NSInvalidArgumentException”异常终止应用程序,原因:“-NSBundle名称:发送到实例0x17556e00的未识别选择器”
有人用过文莫吗?
更新: i从venmo-ios-sdk下载项目。打开样例项目并尝试运行。但它甚至没有编译。

然后我尝试通过添加来创建一个新的演示程序。根据gihub自述文件,我必须添加
pod 'venmo-ios-sdk',:git => 'https://github.com/venmo/venmo-ios-sdk‘
到Podfile去。但它会抛出错误:
好了!给定的podspec
Venmo-iOS-SDK的名称与预期的venmo-ios-sdk不匹配
然后我试着加入
pod 'Venmo-iOS-SDK',:git => 'https://github.com/venmo/venmo-ios-sdk‘
并允许安装。
现在,根据本教程有2种方式发送付款。
Transaction failed with error: The current session is not open.Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Venmo handleOpenURL:]: unrecognized selector sent to instance 0x8e8a410'。这一点很明显,因为在Venmo.m文件中没有实现这种方法。但是它是在Venmo.h文件中声明的。发布于 2014-05-20 19:01:12
这里的iOS工程师-我们实际上正在发布新的Venmo iOS SDK,您现在可以开始使用了!
pod 'Venmo-iOS-SDK', :git => 'https://github.com/venmo/venmo-ios-sdk'我为你的困惑道歉。我们将立即将您使用的框架标记为不建议使用的框架,并将人们指向新的SDK。
如果您有任何困难,集成新的sdk,请提交问题!
更新
抱歉,所有的整合问题,你一直有!在正式发布之前,我们仍在完善我们的文档,您的反馈非常有帮助。你应该把我告上文莫!
我已经用正确的Podfile行更新了文档,handleOpenURL:不再从Venmo.m中丢失。我还更新了自述文件,以澄清如何使用不同的事务方法。希望通过本教程是一个更好的经验,现在-对不起,你结束了我们的豚鼠!
如果您对SDK还有任何问题,请告诉我们!
发布于 2016-01-04 22:53:47
这里的聚会可能有点晚了,但我注意到:
venmoTransaction.amount = [NSDecimalNumber decimalNumberWithString:@"5"];我知道,如果你看一看,它们所需要的文档必须是浮动类型的。
我明白使用Decimal的意义,但尝试将其转换为浮点数或使用如下所示:
NSDecimalNumber *someDecimalNumber = [NSDecimalNumber decimalNumberWithString:@"5"]
//then in the venmo piece
venmoTransaction.amount = [self.someDecimalNumber floatvalue];如果这有帮助,请告诉我。
https://stackoverflow.com/questions/23753475
复制相似问题