什么?在ionic2上实现支付宝支付

来源:互联网 发布:怎么提高淘宝免费流量 编辑:程序博客网 时间:2024/04/29 20:19

参考:cordova-plugin-alipay——ionic2 支付宝App支付插件,支持Android、iOS

       在ionic2上实现支付宝支付的功能,需要使用到一个封装好的cordova插件(当然,如果你会写cordova插件的话,那就另当别论咯)。至于支付宝支付前的准备工作我就不一一赘述了。支付宝的官网就已经说得很明白了。

       上面放置的一个链接是我fork offbye的cordova-plugin-alipay插件后进行修改的github项目。进行修改后在ionic2 rc版上得以成功使用。至于不知半解地研究正确修改的艰辛过程就在这一笔带过~~

下面copy过来,说明一下:

1、cmd命令行下进入ionic2项目,安装需要的cordova插件:

cordova plugin add https://github.com/DreamMoon/cordova-plugin-alipay.git --variable PARTNER_ID=[你的商户PID可以在账户中查询]


2、在需要使用该插件的.ts文件中的开头处(一般在 import 语句下面、@Commponent装饰器语句上面)声明AliPay对象:
declare var AliPay: any;


3、正式使用:在需要调用支付宝支付的地方,加入如下语句:

//第一步:订单在服务端签名生成订单信息,具体请参考官网进行签名处理    let payInfo  = "xxx";    //第二步:调用支付插件    AliPay.pay(payInfo,      function success(e){        alert('success!');      },function error(e){        alert('error!');      });

应用该插件后ionic2打包为ios的注意事项

  • 应用该插件后,ionic2直接打包为android,支付宝支付的功能在app上使用是没有什么问题的。但是在ios上却没有那么顺利了,可能会出现这样的错误(在ionic build ios 或 xcode运行app项目的过程中):
    Undefined symbols for architecture i386: “_deflate”, referenced from 
  • 解决方法的步骤如下: 1.go to target section; 2.Build Phases tab; 3.Link Binaries With Libraries; 4.click on + button; 5.search libz.tbd (or libz.dylib); 6.click on add button.

  • 参考:http://stackoverflow.com/questions/18053546/undefined-symbols-for-architecture-i386-deflate-referenced-from-platcompres


ionic2 使用该插件的说明

该cordova插件是源于 https://github.com/offbye/cordova-plugin-alipay 。

  • 在ionic2使用该插件的过程中所出现的问题进行解决(AliPay对象不存在的问题): 修改plugin.xml文件中的:
   <js-module src="www/AliPay.js" name="AliPay">        <!-- <clobbers target="cordova.plugins.AliPay" /> -->        <clobbers target="AliPay" />    </js-module>
  • 修复ios中路径出错问题: plugin.xml
   <!-- <resource-file src="src/lib/AlipaySDK.bundle"/> -->        <resource-file src="src/ios/lib/AlipaySDK.bundle"/>


0 0
原创粉丝点击