今天在这里与大家分享一个好消息,Windows Phone 官方支付支持中国移动(MO Payment),在此之前无论是 Windows Phone 的用户还是开发者,都知道在Windows Phone 上购买应用或者在进行应用内付费(IAP)的时候微软官方只支持支付宝一种支付方式,这对一些没有支付宝账户的朋友来说,付费流程就会相对复杂一些(因为还需要注册账户),但是现在中国移动的用户,在使用大家手中的Windows Phone 进行购买应用或应用内付费(IAP)时大家会惊喜的发现我们可以使用全新的中国移动的支付方式进行购买。

操作步骤如下:

1. 打开支付页面的时候我们会看到熟悉的支付页面,我们在页面中通过点击添加或切换付款方式进行选择

2. 在打开的选择付款方式页面我们会发现中国移动的付款方式已经在列表中了我们选择即可

3. 返回到支付信息页面点击购买继续完成支持

4. 系统会自动进行支付并且返回支付结果

5. 随后我们会收到移动支付的通知短信

整个流程非常简便快捷有效率。

相信说到这里大家一定有一个疑问就是关于官方支付渠道商店分成问题,其实无论是支付宝还是中国移动的支付都遵循统一的商店分成原则(既三七分成)请参考 应用开发人员协议 。当然的应用内商品和应用本身在上商店之前是需要进行审核的只要符合标准就可以了详细内容请参考  Windows 和 Windows Phone 应用商店策略

以上介绍的是用户体验,这里相信开发者朋友会站出来问这里多了一种支付方式那么我们已经开发好的应用程序,或者今后开发的应用程序如何针对中国移动的支付方式进行适配呢?

其实答案非常简单,我们不需要对这种支付方式进行特殊的配置,也就是说之前已经提交在应用商店中的应用内商品和应用本身无需进行任何修改就可以支持中国移动的支付方式,此外如果是一个全新的应用或应用内商品只需要按照之前 Windows Phone 应用内商品和应用提交的审核流程操作既可以支持中国移动的支付方式。

如果您需要是使用微软的中国移动官方支付,您需要将商品提交到应用商店进行审核后,在配合客户端的代码编写及您应用本身或和您自己的服务器进行验证交互来完成应用内商品购买。我之前有一篇详细介绍应用内购买的文章请参考: Windows Phone 8 In app purchase 应用内购买 / 应用内支付

大致内容如下:

微软的支付流程如下

在进行Coding之前我们需要现在应用商店中提交我们的应用内商品

随后我们要在应用中配置好应用的详细信息,否则我们是无法再应用中拿到商品列表的。(下图是Silverlight应用的配置方法)

Universal 应用需要直接与应用相关联 (参考:如何在Windows应用商店中提交您的Windows 8.1 应用更新

随后我们就可以进行支付部分的 Coding 工作,这里常用的 loadlistingInformationAsync() 来获取所有的商品。

private async void btnListIAPProducts_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
try
{
var ProdList = await CurrentApp.LoadListingInformationAsync();
lbProductsList.Items.Clear();
string t = ""; foreach (var item in ProdList.ProductListings)
{
t = string.Format("{0}, {1}, {2},{3}, {4}",
item.Key,
item.Value.Name,
item.Value.FormattedPrice,
item.Value.ProductType,
item.Value.Description); lbProductsList.Items.Insert(, t);
}
}
catch (Exception ex)
{
MessageBox.Show("Error: " + ex.Message);
}
}

完成支付功能 (详细内容还是建议阅读一下:Windows Phone 8 In app purchase 应用内购买 / 应用内支付

private async void btnOrderProduct_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
var ProdList = await CurrentApp.LoadListingInformationAsync();
var Prod = ProdList.ProductListings.FirstOrDefault(p => p.Value.ProductType == ProductType.Consumable);
try
{
var Receipt = await CurrentApp.RequestProductPurchaseAsync(Prod.Value.ProductId, true); if (CurrentApp.LicenseInformation.ProductLicenses[Prod.Value.ProductId].IsActive)
{
// do someting with this license... // Notify the marketplace that the application has delivered the paid-for goods to the user.
CurrentApp.ReportProductFulfillment(Prod.Value.ProductId);
}
MessageBox.Show(Receipt, "Fatura", MessageBoxButton.OK);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "Fatura", MessageBoxButton.OK);
}
}

此外如果你如果需要将你的应用进行打包上传发布到 Windows Store 请参考:Windows / Windows Phone 8.1 预留应用名称及应用上传

其实整个流程也比较简单,首先填写一些应用的一些基本信息,例如应用名称,类别,销售价格,分发市场等内容。

然后提交您的应用程序包到商店中进行审核即可,待审核通过后Windows 用户就可以在商店下载(购买)您的应用了。

希望上的总结可以帮助到大家, 同时欢迎大家在这里和我沟通交流或者在新浪微博上 @王博_Nick

Windows Phone 支持中国移动官方支付的更多相关文章

  1. Windows Server 2012 R2 官方原版镜像

    微软操作系统 Windows Server 2012 R2 官方原版镜像 Windows Server 2012 R2 是由微软公司(Microsoft)设计开发的新一代的服务器专属操作系统,其核心版 ...

  2. 装python package 时,conda提示会升级python2到python3,那可能是你的windows不支持py2env下的此包。

    装python package 时,conda提示会升级python2到python3, 那可能是你的windows不支持py2env下的此包.比如:win 下,tensorflow就不支持py2的环 ...

  3. Windows CMD 支持ls命令

    /********************************************************************** * Windows CMD 支持ls命令 * 说明: * ...

  4. 解决Sqlserver 2008 R2在创建登录名出错"此版本的 Microsoft Windows 不支持 MUST_CHANGE 选项。 (Microsoft SQL Server,错误: 15195)"

    错误信息:   执行 Transact-SQL 语句或批处理时发生了异常. (Microsoft.SqlServer.ConnectionInfo)   此版本的 Microsoft Windows ...

  5. Docker学习笔记-Windows系统支持(一)

    Docker对windows的支持情况: 一.Docker for Windows ServerDocker Enterprise Edition for Windows Server 2016htt ...

  6. 微软操作系统 Windows Server 2012 R2 官方原版镜像

    微软操作系统 Windows Server 2012 R2 官方原版镜像 Windows Server 2012 R2 是由微软公司(Microsoft)设计开发的新一代的服务器专属操作系统,其核心版 ...

  7. IE Edge 下载文件的时候,文件名不能有windows不支持的特殊字符

    IE Edge 下载文件的时候,文件名不能有windows不支持的特殊字符,比如:等. 马了个批的,其他浏览器包括IE就可以自动转换,比如:会自动变为_.

  8. C++ windows客户端支持SSL双向认证

    C++ windows客户端支持SSL双向认证,服务端是JAVA开发的,使用的证书是jks格式的.C++并不支持JKS格式的证书,所以要用openssl进行转换下. 1. 需要先把jks转成.p12文 ...

  9. Kube-OVN v1.10.0:新增Windows节点支持,用户自定义子网ACL等10+硬核功能

    在Kube-OVN社区小伙伴的共同努力下,Kube-OVN v1.10.0于五月份正式发布.Kube-OVN v1.10.0版本中,我们一如既往地对Kube-OVN 的功能.性能.稳定性和易用性进行了 ...

随机推荐

  1. kali linux系列之启用vpn

    kali linux系列之启用vpn 文/玄魂 默认情况下,kali linux的vpn选项是不可用的. 下面是安装openvpn的方法,同样的,可以安装其他类型的vpn. 打开终端输入命令: Apt ...

  2. 实验三 组合逻辑电路的VHDL设计

    一.实验目的 熟悉QuartusⅡ的VHDL文本设计过程,学习简单组合逻辑电路的设计.仿真和测试方法. 二.实验内容 1. 基本命题 完成2选1多路选择器的文本编辑输入(mux21a.vhd)和仿真测 ...

  3. GCC选项

    -g: Debugging Option. 提供给GDB的debugging信息的选项: -fno-omit-frame-pointer: Optimization Option: -Wstrict- ...

  4. [WinAPI] API 9 [文件的删除、复制和移动功能]

    Windows系统为文件的删除.复制.重命名或移动文件提供了相应的API函数.删除文件使用DeleteFile函数:复制文件使用CopyFile函数:重命名文件和移动文件实际是一个操作,使用MoveF ...

  5. 深入浅出OOP(二): 多态和继承(继承)

    本文是深入浅出OOP第二篇,主要说说继承的话题. 继承的介绍 在OOP中,继承有如下的定义: 继承是一种OOP的机制,用于派生继承预定义的类 在这个继承关系中,预定义的类是基类,新类是子类 继承常常用 ...

  6. Spring-MVC配置方法

    什么是spring-mvc 实现了mvc结构的spring模块,spring-mvc模块封装了web开发中的常用功能,简化了web过程. DispatcherServlet处理浏览器发来的请求 Han ...

  7. atitit.泛型编程总结最佳实践 vO99 java c++ c#.net php

    atitit.泛型编程总结最佳实践 vO99 java c++ c#.net php \ 1. 泛型历史 1 由来 1 2. 泛型的机制编辑 1 机制 1 编译机制 2 3. 泛型方法定义1::前定义 ...

  8. iOS开发-友盟分享使用(2)

    1.友盟SDK提供功能:分享喜欢的东西到新浪微博.qq空间.为微信朋友圈等等等等社交圈. 2.友盟分享前期准备 (1)注册账号 去官网 (2)创建应用获取appkey 类似5556a53667e*** ...

  9. IT 需要知道的一些专业名词和解释 (长期更新)

    c2c: 就是我卖东西你来买  (comsumer to comsumer个人对个人) b2c: 就是我开公司卖东西你来买 (business to comsumer 公司对个人) o2o: 就是我开 ...

  10. Liferay7 BPM门户开发之35: AssetTag的集成查询

    Tag是liferay中的Asset特性,可以用来对信息进行分类,在iferay中的Asset类型为: 1. Web Content(自定义内容) 2. Documents and Media(文档库 ...