首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Venmo支付iOS集成问题

Venmo支付iOS集成问题
EN

Stack Overflow用户
提问于 2014-05-20 07:27:43
回答 2查看 1.4K关注 0票数 2

我想集成文莫库付款到一个iOS应用程序。

我通过跟踪venmo github项目创建了一个演示程序。

根据对github项目的描述,下面是在浏览器中显示venmo应用程序/open venmo的代码:

代码语言:javascript
复制
- (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种方式发送付款。

  1. 切换到Venmo应用程序:尝试这会引发错误Transaction failed with error: The current session is not open.
  2. 使用Venmo :这会引发Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Venmo handleOpenURL:]: unrecognized selector sent to instance 0x8e8a410'。这一点很明显,因为在Venmo.m文件中没有实现这种方法。但是它是在Venmo.h文件中声明的。
EN

回答 2

Stack Overflow用户

发布于 2014-05-20 19:01:12

这里的iOS工程师-我们实际上正在发布新的Venmo iOS SDK,您现在可以开始使用了!

代码语言:javascript
复制
pod 'Venmo-iOS-SDK', :git => 'https://github.com/venmo/venmo-ios-sdk'

我为你的困惑道歉。我们将立即将您使用的框架标记为不建议使用的框架,并将人们指向新的SDK。

如果您有任何困难,集成新的sdk,请提交问题

更新

抱歉,所有的整合问题,你一直有!在正式发布之前,我们仍在完善我们的文档,您的反馈非常有帮助。你应该把我告上文莫

我已经用正确的Podfile行更新了文档,handleOpenURL:不再从Venmo.m中丢失。我还更新了自述文件,以澄清如何使用不同的事务方法。希望通过本教程是一个更好的经验,现在-对不起,你结束了我们的豚鼠!

  • 要使用Venmo应用程序发送付款,您需要在安装了Venmo应用程序的设备上运行应用程序。
  • 要使用Venmo发送付款,您需要首先向用户请求权限

如果您对SDK还有任何问题,请告诉我们!

票数 1
EN

Stack Overflow用户

发布于 2016-01-04 22:53:47

这里的聚会可能有点晚了,但我注意到:

代码语言:javascript
复制
venmoTransaction.amount = [NSDecimalNumber decimalNumberWithString:@"5"];

我知道,如果你看一看,它们所需要的文档必须是浮动类型的。

我明白使用Decimal的意义,但尝试将其转换为浮点数或使用如下所示:

代码语言:javascript
复制
NSDecimalNumber *someDecimalNumber = [NSDecimalNumber decimalNumberWithString:@"5"]
//then in the venmo piece 
venmoTransaction.amount = [self.someDecimalNumber floatvalue];

如果这有帮助,请告诉我。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23753475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档