安卓开发如何实现支付功能.docx_第1页
安卓开发如何实现支付功能.docx_第2页
安卓开发如何实现支付功能.docx_第3页
安卓开发如何实现支付功能.docx_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微信和支付宝的开发使用有着严格的企业审核机制,个人app集成支付功能一直困扰着开发者们,本文将带你分分钟实现个人app集成支付宝和微信的支付功能。我们开发项目的时候难免会遇到支付的需求,现在即使不是电商平台基本也都有支付功能。涉及到支付,我们立刻就会想到国内鼎鼎大名独霸多年的支付宝,还有近几年通过微信人脉起来的微信支付,其它的也有很多,但是对于我们app来说,你只需要集成主流用户基数最大的就可以,他们手机都会有这两个app,这样也能确保用户可以支付成功。当然,这只是说电子商务,除了这2个还要支持各大银行的网银。并不是每个用户都用支付宝微信,但是每个人都会有一张银行卡。下面开始集成支付宝和微信支付:1.注册bmob平台账户并创建应用2.申请支付权限,按照步骤上传照片下一步即可3.下载支付包 BmobPay_v3.0.3_160621.jar包,放到libs下4.加入权限5.为了防止客户没有支付插件,这里要把支付插件放到main下的assets下,bp.db,其实就是apk,这样防止被安全软件检测警告。6.初始化 BP.init(context,你的Application ID);7.最后调用付款 第4个参数为true时调用支付宝支付,为false时调用微信支付BP.pay(商品名称, 商品描述, 钱数, true, new Plistener()回调方法);下面是代码:调用微信付款:private void payWeixin() Log.i(TAG, payWeixin: +weixin); /* * 第5个参数为true时调用支付宝支付,为false时调用微信支付 */ BP.pay( 商品名称, 商品描述, 0.02, false,new PListener() Override public void orderId(String s) Log.i(TAG, orderId: +s); Override public void succeed() Log.i(TAG, succeed: +成功); Override public void fail(int i, String s) Log.i(TAG, i+fail: +s); install(i); Override public void unknow() );调用安装插件的方法private void install(int i) if (i = -3) new AlertDialog.Builder(SettlementActivity.this) .setMessage( 监测到你尚未安装支付插件,无法进行微信支付,请选择安装插件(已打包在本地,无流量消耗)还是用支付宝支付) .setPositiveButton(安装, new DialogInterface.OnClickListener() Override public void onClick( DialogInterface dialog, int which) installBmobPayPlugin(bp.db); ) .setNegativeButton(支付宝支付, new DialogInterface.OnClickListener() Override public void onClick( DialogInterface dialog, int which) payAli(); ).create().show(); else Toast.makeText(SettlementActivity.this, 支付中断!, Toast.LENGTH_SHORT).show(); /安装插件 void installBmobPayPlugin(String fileName) try InputStream is = getAssets().open(fileName); File file = new File(Environment.getExternalStorageDirectory() + File.separator + fileName + .apk); if (file.exists() file.delete(); file.createNewFile(); FileOutputStream fos = new FileOutputStream(file); byte temp = new byte1024; int i = 0; while (i = is.read(temp) 0) fos.write(temp, 0, i); fos.close(); is.close(); Intent intent = new Intent(Intent.ACTION_VIEW); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setDataAndType(Uri.parse(file:/ + file),

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论