在 iOS 中处理向用户的付款

2023-12-21

我正在探索是否有可能在 iOS 中实现我的想法。然而,这个想法取决于能够give用户的钱。这在 iOS 中可能吗?我知道 Apple 希望您在以下情况下使用 StoreKit:taking来自用户的钱(应用内购买等),但是 StoreKit 中是否有一种机制可以give如果没有,iOS 规则是否允许使用 PayPal 等第三方服务向用户提供资金?


是的,您可以使用 Paypal 等第三方服务进行付款。要实施 Paypal 机制,请执行以下步骤。

1) 下载 iOS 版移动支付库表格here https://www.x.com/developers/paypal/documentation-tools/paypal-sdk-index

2) 在视图控制器的头文件中导入 PayPal.h 文件。

3)在项目中包含以下框架——Security.framework、MapKit、ImageIO、SystemConfiguration

4)还包括以下两个库文件 - libz.dylib、libxml2.dylib

5)创建一个付款按钮,例如

     UIButton checkOutBtn=[[PayPal getPayPalInst] getPayButtonWithTarget:self andAction:@selector(payWithPayPal) andButtonType:BUTTON_152x33 andButtonText:BUTTON_TEXT_PAY];
     checkOutBtn.frame=CGRectMake(60, 100, 200, 45);
     [self.view addSubview:checkOutBtn];  

6)使用以下代码实现按钮操作方法:

    -(void) payWithPayPal
    {
           [PayPal getPayPalInst].shippingEnabled=TRUE;
           [PayPal getPayPalInst].dynamicAmountUpdateEnabled=TRUE;
           [PayPal getPayPalInst].feePayer=FEEPAYER_EACHRECEIVER;

           PayPalPayment *payment=[[[PayPalPayment alloc] init] autorelease];
           payment.recipient=@"[email protected] /cdn-cgi/l/email-protection";
           payment.paymentCurrency=@"USD";

           payment.description = @"Paypal";
           payment.merchantName = @"Title Name";

           //subtotal of all items, without tax and shipping

           payment.subTotal = [NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%1.2f", 5320.50 ]];   // total Price

          //invoiceData is a PayPalInvoiceData object which contains tax, shipping, and a list of PayPalInvoiceItem objects

           payment.invoiceData = [[[PayPalInvoiceData alloc] init] autorelease];
           payment.invoiceData.totalShipping = [NSDecimalNumber decimalNumberWithString:@"2"];   // Shipping Cost
           payment.invoiceData.totalTax = [NSDecimalNumber decimalNumberWithString:@"0.35"];   // Tax On Product

           //invoiceItems is a list of PayPalInvoiceItem objects
           //NOTE: sum of totalPrice for all items must equal payment.subTotal

           payment.invoiceData.invoiceItems = [NSMutableArray array];
           PayPalInvoiceItem *item = [[[PayPalInvoiceItem alloc] init] autorelease];

           item.totalPrice = payment.subTotal;
           item.name = @"Product Name";
           [payment.invoiceData.invoiceItems addObject:item];

           [[PayPal getPayPalInst] checkoutWithPayment:payment];
    }

7) 使用以下代表

    -(void)paymentSuccessWithKey:(NSString *)payKey andStatus:(PayPalPaymentStatus)paymentStatus
    {
           NSLog(@"Successfully Paid");
    }
    -(void)paymentCanceled
    {
           NSLog(@"Cancelled");
    }
    - (void)paymentFailedWithCorrelationID:(NSString *)correlationID
    {
           NSLog(@"Failed");
    }
    -(void)paymentLibraryExit
    {
           NSLog(@"Exit");
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 iOS 中处理向用户的付款 的相关文章

随机推荐

  • 装饰器不支持函数调用,但调用了“FileTypeModule”

    尝试设置ngx formly material 文件 https github com alEX860111 ngx formly material file 但我得到一个错误 装饰器不支持函数调用 但调用了 FileTypeModule
  • Android的RelativeLayout似乎坏了

    我正在开发一个布局 其中使用带有RelativeLayout 行项目的ListView 行项目本身无法正确显示 问题是 txtVideoDuration TextView 绘制在行项目的顶部而不是底部 因此 txtVideoTitle 的高
  • 我什么时候应该使用 C# 的 LINQ? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在学习 C 我发现 LINQ 非常有趣 然而 令我困惑的是 我想不出使用 LINQ 会有巨大帮助的场景 因为在代码中复制 LINQ 功能实际
  • 在 ruby​​ 中杀死一个名为 using open3 的进程

    我正在使用命令行程序 它的工作原理如下 ROUTE TO FOLDER app lt long text If 长文本 使用参数编写 app 需要 那么它将用结果填充一个文本文件 如果没有 它将连续用点填充文本文件 我无法处理或修改 app
  • 使用 jQuery 检测字体大小(以像素为单位)[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 如何使用
  • 查找 gitignore 文件和导致文件被 git 忽略的行[重复]

    这个问题在这里已经有答案了 如何找到导致文件被 git 忽略的 gitignore 文件和行 从存储库根目录尝试以下操作 find gitignore git info exclude name gitignore exec cat les
  • 找不到酶适配器反应16的声明文件?

    一段时间以来 我一直在使用 Enzyme 来测试 React 应用程序中的组件 几周内第一次更新我的软件包后 我开始从测试中收到错误 FAIL src tests title test ts Testing title component
  • ndim 在 numpy 中的工作

    import numpy as np gt gt gt a np array 1 2 3 4 gt gt gt a array 1 2 3 4 gt gt gt a ndim 1 维度如何为 1 我给出了一个包含 3 个变量的方程 这意味着
  • 清除表单字段并将详细信息保存在 Angular JS 中

    我使用 Angular js 创建了一个简单的表单 当用户输入详细信息并提交时 这些值将保存在控制台中 但即使单击提交按钮后 这些值仍保留在字段中 我现在想在控制台中保存各个字段的详细信息 并且需要在单击提交按钮后清除字段 以便可以输入下一
  • Backbone.js 不会发出跨主机请求?

    我一直在 Chrome 控制台中使用 Backbone 并遇到了我无法解决的跨域问题 我连接的主机可能正确实现了 CORS 因为原始 XHR 请求返回了预期的 JSON var http new XMLHttpRequest http op
  • 在react中调用onchange事件中的两个函数

    我正在尝试使用 onChange 事件调用两个函数 以在反应中动态搜索功能 在第一个函数中 我设置一个值的状态 在第二个函数中 我必须调用该值并执行该函数 我无法同时调用两个函数 我不会使用此示例代码添加模拟 JSON handleChan
  • 获取 API 产生“TypeError:无法获取”

    我在 Chrome 上 看到这个奇怪的错误 TypeError failed to fetch 是的 这就是整个错误消息 这是生成错误的代码 fetch logoUrl method put headers Content Type ima
  • SQL Access 2010 按日期查询“条件表达式中的数据类型不匹配”。

    我尝试在 Access 2010 中进行查询 但它不断向我显示此错误 条件表达式中的数据类型不匹配 查询很简单 SELECT FROM mytable WHERE date 23 07 2013 想知道为什么吗 SELECT FROM my
  • 创建双镜像三角形

    我需要帮助制作这样的镜像三角形 我可以单独获得每一项 但无法将它们组合起来 public static void main String args for int i 1 i lt 5 i for int j 0 j lt i j Syst
  • 从字符串中删除所有非小写字符

    我明白给定一个字符串 str str replace s g 将删除字符串中的所有空格 如何从字符串中删除所有非小写字母的字符 你可以 str replace a z g
  • Scala - 大小写匹配部分字符串

    我有以下内容 serv match case chat gt Chat Server Relay Message serv case gt null 问题是有时我还会在 serv 字符串末尾传递一个附加参数 因此 var serv chat
  • 微风:getEntityGraph 中出现意外错误

    我使用 getEntityGraph 扩展 它工作正常 但在以下情况除外 添加新实体 不要保存它并在实体上调用 setDeleted 通过将实体和 np 集合作为参数传递来调用 getEntityGraph 当调用 makePathSegm
  • 如何将 Django 模型从 mysql 迁移到 sqlite(或任意两个数据库系统之间)?

    我在生产环境中有一个使用 MySQL 的 Django 部署 我想使用 SQLite 进行进一步的开发 因此我想将现有数据导入到 SQLite 数据库中 我 有一个shell脚本here https stackoverflow com qu
  • Chrome:如何以原始尺寸打印 PDF(100%,无缩放/缩小)

    今天我在 Chrome 的打印行为中遇到了一个奇怪的错误 当我尝试使用 Chrome 打印动态创建的 PDF 时 也在火狐浏览器中 PDF 中的每个图像都会变小一点 8 毫米 在 Adob e Reader Acrobat MacOSX 默
  • 在 iOS 中处理向用户的付款

    我正在探索是否有可能在 iOS 中实现我的想法 然而 这个想法取决于能够give用户的钱 这在 iOS 中可能吗 我知道 Apple 希望您在以下情况下使用 StoreKit taking来自用户的钱 应用内购买等 但是 StoreKit