0
点赞
收藏
分享

微信扫一扫

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


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

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

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 条评论