今天在这里与大家分享一个好消息,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. [ACM_搜索] POJ 1096 Space Station Shielding (搜索 + 洪泛算法Flood_Fill)

    Description Roger Wilco is in charge of the design of a low orbiting space station for the planet Ma ...

  2. redmine 一键安装

    Redmine 是一个开源的.基于Web的项目管理和缺陷跟踪工具.它用日历和甘特图辅助项目及进度可视化显示.同时它又支持多项目管理.Redmine是一个自由开放 源码软件解决方案,它提供集成的项目管理 ...

  3. java 解析xml

    http://developer.51cto.com/art/200903/117512.htm

  4. js运动:多div变宽、二级菜单

    定时器及运动函数. 多div变宽: <!-- Author: XiaoWen Create a file: 2016-12-13 09:36:30 Last modified: 2016-12- ...

  5. paip.c3p0 数据库连接池 NullPointerException 的解决...

    paip.c3p0 数据库连接池 NullPointerException 的解决... 程序ide里面运行正常..外面bat运行错误.. 作者Attilax  艾龙,  EMAIL:14665198 ...

  6. javaweb学习总结(二十一)——JavaWeb的两种开发模式

    SUN公司推出JSP技术后,同时也推荐了两种web应用程序的开发模式,一种是JSP+JavaBean模式,一种是Servlet+JSP+JavaBean模式. 一.JSP+JavaBean开发模式 1 ...

  7. Android 实用工具Hierarchy Viewer实战

    在Android的SDK工具包中,有很多十分有用的工具,可以帮助程序员开发和测试Android应用程序,大大提高其工作效率.其中的一款叫Hierachy Viewer的可视化调试工具,可以很方便地在开 ...

  8. LoadRunner 如何将英文的字符串转换成UTF-8格式的字符串?

    7.48  如何手动转换字符串编码 1.问题提出 如何将英文的字符串转换成UTF-8格式的字符串? 2.问题解答 可以使用lr_convert_string_encoding函数将字符串从一种编码手动 ...

  9. [GO编程]GO编程环境

    GO是一个开源项目,由Google大神发明的,他主要是用于应用程序级开放,可以编译成机器码,和C++一样不需要.NET或JAVA那样的运行框架,因此是个不错的编程语言.更何况发明者都是高手中的高手,而 ...

  10. latextools \cite 自动补全

    最近在用latex写毕业论文,编辑环境用的是Sublime Text 2 加 latextools 插件,在使用latextools的\cite命令来引用参考文献时,我们希望输入\cite{ 后自动弹 ...