.NET(C#、VB)APP开发——Smobiler平台控件介绍:AliPay组件

article/2025/10/27 4:15:08

本文简述如何在Smobiler中调用支付宝支付。

Step 1. 界面

新建一个窗体,并在窗体中拖入Button,Label,AliPay等控件,布局如下:

在这里插入图片描述

Step 2. 代码

在窗体中声明变量

        //订单编号private string tradeNo;//支付宝应用编号,此应用必须签约 APP支付(请从支付宝开发者平台获取)private string appid = "************";//应用的私钥private string appPrivateKey = "****************************";//应用的支付宝公钥private string aliPublicKey = "************************";//阿里支付网关private string aliOpenAPI = "https://openapi.alipay.com/gateway.do";

【生成订单编号】按钮点击事件代码:

        private void btnOutOrder_Press(object sender, EventArgs e){tradeNo = "SMOAPP" + DateTime.Now.ToString("yyyyMMddHHmmss");this.labOutOrder.Text = tradeNo;}

【创建订单】按钮的点击事件代码如下:

        private void btnCreateOrder_Press(object sender, EventArgs e){if (string.IsNullOrEmpty(tradeNo) == true){btnOutOrder_Press(null, null); //生成订单编号}IAopClient client = GetAPOClient();//实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称如:alipay.trade.app.payAlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();//SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();model.Body = "请支持0.01元"; //支付描述model.Subject = "支付"; //支付标题model.TotalAmount = "0.01"; //支付金额model.ProductCode = "QUICK_MSECURITY_PAY"; //产品码model.OutTradeNo = tradeNo; //外部编号,外部编号在支付成功时,只能使用一次model.TimeoutExpress = "30m"; //超时时间request.SetBizModel(model);//有条件可设置回调地址,支付宝在支付完成后会POST此地址。或通过查询的方式。//request.SetNotifyUrl("");//这里和普通的接口调用不同,使用的是sdkExecuteAlipayTradeAppPayResponse response = client.SdkExecute(request);//页面输出的response.Body就是orderString 可以直接给客户端请求,无需再做处理。System.Diagnostics.Debug.WriteLine(response.Body);//注意,第一个参数是苹果支付需要的格式为ap应用编号,android可设置为空this.aliPay1.AppPay("ap" + appid, response.Body, (obj, args) =>{if (args.isError == true){MessageBox.Show(args.error);}else{string result = "";//foreach (KeyValuePair<string, object> item in args.result)//{//    result += string.Format("{0}/{1}" + Environment.NewLine, item.Key, item.Value);//}MessageBox.Show(result);}});}

【支付状态查询】按钮点击事件代码:

        private void btnOrderStatus_Press(object sender, EventArgs e){IAopClient client = GetAPOClient();//实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称如:alipay.trade.app.payAlipayTradeQueryRequest request = new AlipayTradeQueryRequest();//SDK已经封装掉了公共参数,这里只需要传入业务参数。以下方法为sdk的model入参方式(model和biz_content同时存在的情况下取biz_content)。AlipayTradeQueryModel model = new AlipayTradeQueryModel();model.OutTradeNo = tradeNo;request.SetBizModel(model);//这是普通的接口使用ExecuteAlipayTradeQueryResponse response = client.Execute(request);//页面输出的response.Body就是orderString 可以直接给客户端请求,无需再做处理。System.Diagnostics.Debug.WriteLine(response.Body);MessageBox.Show(response.Body);}private IAopClient GetAPOClient(){return new DefaultAopClient(aliOpenAPI, appid, appPrivateKey, "json", "1.0", "RSA2", aliPublicKey, "utf-8", false);}

Step 3. 测试

AliPay组件测试需要在Smobiler 云平台上添加AliPay插件并打包客户端。登陆云平台,选择应用(或者创建应用)-应用打包,

在这里插入图片描述

将打包好的客户端下载安装到手机上,运行服务端程序,进行测试,效果如下

在这里插入图片描述


http://chatgpt.dhexx.cn/article/6tVgB9Zm.shtml

相关文章

.NET(C#、VB)APP开发——Smobiler平台控件介绍:BarcodeReader组件

本文简述如何在Smobiler中使用BarcodeReader组件进行条码识别。Barcodereader通过机器学习能识别不规则条码&#xff0c;效率更好。 Step 1. 新建一个SmobilerForm窗体&#xff0c;并在窗体中加入Barcodereader和Button&#xff0c;布局如下 Button的点击事件代码&#xff1a; …

.NET(C#、VB)APP开发——Smobiler平台控件介绍:LiveStream和LiveStreamPlayer

本文简述如何在Smobiler中使用LiveStream和LiveStreamPlayer。 LiveStream 直播推送插件 Step 1. 新建一个SmobilerForm窗体&#xff0c;并在窗体中加入LiveStream和Button&#xff0c;布局如下 选中LisvStream&#xff0c;在设计器中设置Url&#xff08;需要事先准备一个视频…

【转载】smobiler说明

类似开发WinForm的方式&#xff0c;使用C#开发Android和IOS的移动应用&#xff1f;听起来感觉不可思议&#xff0c;那么Smobiler平台到底是如何实现的呢&#xff0c;这里给大家介绍一下。 客户端 Smobiler分为两种客户端&#xff0c;一种是开发版&#xff0c;一种是打包版 开发…

.NET(C#)能开发出什么样的APP?盘点那些通过Smobiler开发的移动应用

.NET程序员一定最熟悉所见即所得式开发,熟悉的Visual Studio开发界面,熟悉的C#代码。 Smobiler也是因为具备这样的特性,使开发人员,可以在VisualStudio上,像开发WinForm一样拖拉控件,让许多人在开发APP时,再次回到所见即所得的开发方式中去。 Smobiler的快速开发,让Ama…

.NET(C#、VB)APP开发——Smobiler平台控件介绍:MapView MaptrimView

本文简述如何在Smobiler中使用MapView和MaptrimView。 Mapview MapView 地图插件&#xff0c;可用于显示指定地点地图&#xff0c;显示轨迹等。 Step 1. 新建一个SmobilerForm窗体&#xff0c;再拖入MapView和Button&#xff0c;MapView.Size设置&#xff08;300,300&#xf…

Smobiler 窗体

在Smobiler开发过程中&#xff0c;大家经常会对窗体的跳转&#xff0c;显示&#xff0c;关闭&#xff0c;生命周期存在一些不明白的地方&#xff0c;这篇文章主要用来说明Smobiler窗体。 Smobiler Form 和WindowsForm编程一样&#xff0c;在手机上显示的界面在Smobiler就是一个…

Smobiler快手小程序开发指南

注&#xff1a;快手小程序审核规范中写明拒绝纯webview小程序, 即无法通过以下步骤上架快手小程序, Smobiler只能作为快手小程序开发的一个补充, 具体见 快手-小程序审核规范 Step.1 注册快手开发者平台 &#xff0c;登录之后点击创建 创建完成之后再点击应用进入 点击填写&am…

.NET(C#、VB)APP开发——Smobiler平台控件介绍:Bluetooth组件

本文简述如何在Smobiler中使用Bluetooth。 Step 1. 新建一个SmobilerForm窗体&#xff0c;并在窗体中加入Button和Bluetooth&#xff0c;布局如下 Button的点击事件代码&#xff1a; /// <summary>/// 关闭蓝牙/// </summary>/// <param name"sender"…

.NET(c#) 移动APP开发平台 - Smobiler(1)

如果说基于.net的移动开发平台&#xff0c;目前比较流行的可能是xamarin了&#xff0c;不过除了这个&#xff0c;还有一个比xamarin更好用的国内的.net移动开发平台&#xff0c;smobiler&#xff0c;不用学习另外一套开发模式或者搭建复杂的开发环境&#xff0c;smobiler能够让…

Smobiler字节小程序开发指南

Step.1 注册字节开发者&#xff0c;登录字节开发者平台后点击创建小程序&#xff08;注&#xff1a;需要通过主体验证&#xff09;。 Step.2 点击开发设置&#xff0c;设置webview域名&#xff0c;仅支持https。 Step.3 下载安装字节开发工具&#xff0c;选择创建项目&#xff…

Smobiler飞书小程序开发指南

Step.1登录飞书开放平台&#xff0c;登录后进入开发者后台&#xff0c;点击创建企业自建应用&#xff0c;输入应用名称和应该描述&#xff0c;在点击确认创建。 Step.2点击新创建的应用&#xff0c;进入应用设置页。 点击应用功能-网页&#xff0c;输入smobiler服务端 访问地址…

Smobiler打包apk安装包——C# 或.NET Smobiler实例开发手机app(四)

目录 一、 前言 二、创建应用 1、 注册Smobiler的账号 2、上传资源 3、 连接项目 三、 应用打包 1、 内容的填写问题 2、 上传静态资源 3、 完成 一、 前言 如果你的项目还没有做完&#xff0c;想测试一下Smobiler的打包功能或者是你想要看一下当前的状态&#xff0c…

smobiler介绍(二)

类似开发WinForm的方式&#xff0c;使用C#开发Android和IOS的移动应用&#xff1f;听起来感觉不可思议&#xff0c;那么Smobiler平台到底是如何实现的呢&#xff0c;这里给大家介绍一下。 客户端 Smobiler分为两种客户端&#xff0c;一种是开发版&#xff0c;一种是打包版 开…

.NET(c#) 移动APP开发平台 - Smobiler(2) - 平台介绍

.NET(c#) 移动APP开发平台 - Smobiler(2) - 平台介绍 看到大家很多人在后台问我一些问题&#xff0c;所以准备写一个系列了&#xff0c;下面给个目录 目录&#xff1a; .NET(c#) 移动APP开发平台 - Smobiler(1) 环境的搭建及上手第一个应用 类似开发WinForm的方式&#xff0c;使…

smobiler自适应不同手机分辨率

在smobiler中可以通过相对布局或者绝对布局实现自适应不同手机分辨率。 例如实现下图中的布局&#xff0c;图中的布局实际可以分成3个部分&#xff0c;部分1可以使用Title控件&#xff0c;部分2可以使用Panel&#xff08;在Panel中加入IconMenuView可以实现图中效果&#xff0c…

修复weblogic的JAVA反序列化漏洞的多种方法

0x00 前言 目前oracle还没有在公开途径发布weblogic的JAVA反序列化漏洞的官方补丁&#xff0c;目前看到的修复方法无非两条&#xff1a; 使用SerialKiller替换进行序列化操作的ObjectInputStream类;在不影响业务的情况下&#xff0c;临时删除掉项目里的 "org/apache/comm…

【漏洞复现】Weblogic SSRF漏洞复现

C语言专栏&#xff1a;C语言基本语法、基本操作、相关库函数的编写&#xff0c;相关内存分析 C专栏&#xff1a;C基本语法、C相关结构剖析&#xff0c;详细例题&#xff0c;相关小型Demo的编写 数据结构专栏&#xff1a;基本数据结构原理介绍&#xff0c;代码实现&#xff0c;相…

手动部署EJB于WebLogic

转载自http://blog.sina.com.cn/s/blog_678530f60100hy6c.html 说是转载&#xff0c;其实是我个人几年前在新浪博客上发表的一篇文章 上一篇说道如何使用Eclipse、MyEclipse、JDK和WebLogic开发并且部署FibonacciEJB&#xff0c;并通过客户端访问成功。然而&#xff0c;那是借…

数数C语言,(旧)子数涵数·C语言——让C帮你做计算

之前&#xff0c;我们学过了我们的第一个C程序——hello World。现在开始进一步学习&#xff0c;想一想如何让C帮你做计算。 我们先来看代码(我没有新建&#xff0c;还是用之前的hello world.cpp)&#xff1a; 好&#xff0c;因为之前在hello World的时候就已经学过了C的基本框…

Weblogic远程代码执行(CVE-2020-14645)

声明 好好学习&#xff0c;天天向上 漏洞描述 Weblogic是美国Oracle公司出品的一个Application Server&#xff0c;确切的说是一个基于JavaEE架构的中间件&#xff0c;Weblogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。 攻击…