QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Windows 商店业务应用程序的关键技术

  • 2012-12-28
  • 本文字数:1613 字

    阅读完需:约 5 分钟

相比于其他各类应用程序,业务应用程序往往更强调数据存储和安全。尽管 Windows 8 商店有很多限制,我们仍然有不少不同的选择来满足这些需求。

本地存储技术

有三个直接可用的本地存储技术。

Application Data API 用于设置和状态的保存。它支持本地和移动数据存储。前者对文件大小没有限制,而后者是通过 ApplicationData.RoamingStorageQuota 来限制的。

可扩展存储引擎( Extensible Storage Engine )为 C++ 应用程序提供了 IASM 存储技术。该引擎既可以用于结构化数据,也可以用于非结构化数据。如果有人能为其创建 WinRT 包装器的话,其他语言就也能使用了。

JavaScript 用户还可以使用 IndexedDB 。Windows 商店应用程序的存储限制为 250 MB,对于浏览器应用这是足够的,但对于数据密集型应用还是相当小的。

SQLite 和其他第三方数据库也提供了 Windows 8 支持。唯一的主要技术限制是数据库必须与应用程序在同一进程内运行。Visual Studio Gallary 提供了支持 Windows 8 的 SQLite,还通过 NuGet 提供了一些附加特性。

远程存储技术

这方面有大量可选的技术,包括 TCP、HTTP、WCF 和 OData。除了使用命名管道或打开一个 TCP 端口之外,几乎所有能够用于桌面应用程序的技术都可以用于 Windows 8 应用程序。

因为 Windows 8 有意支持便携式设备,所以强烈建议使用二级离线存储。虽然本地数据库和远程数据库可以手工同步,但微软建议将库(如 Sync Framework Toolkit )和 SQLite 作为本地存储的选择。Sync Framework 是基于 Apache 2.0 许可证开源的项目,现在已经发布。

安全技术

Windows 集成认证——应用程序可以像普通的桌面应用程序一样悄悄地传递一个 Kerberos 认证。如果设备不属于该域,那么 Windows 会提示用户输入其活动目录用户名和密码。为启用该功能,请使用 Credential Picker

应用认证——每个应用程序都有自己的认证存储区。应用程序也可以在设备的根认证存储区中替换认证信息。

多元身份认证——支持智能卡。和活动目录证书一样,操作系统会提示用户插入智能卡并输入匹配的 PIN 密码。

Microsoft Account——我们之前的新闻曾提到过, Microsoft Account 是基于 Windows Live 的。再次说明,该技术会使用 Windows 提供的一个对话框来避免应用程序获得原始密码。

加密——常见的哈希、对称算法和非对称算法都可以使用。

更多信息请观看 Robert Green 的视频: Key technologies for Windows Store business apps

测试

目前手动测试还是 UI 测试的唯一选择。 Microsoft Test Manager 通过 UI 录制让测试过程更容易了一点。

微软有计划在以后提供可编码 UI 测试(coded UI testing),但发布日期尚未宣布。

远程测试要求一个免费的开发者许可证。这是独立于Windows 应用商店许可证的,在美国后者每年的价格是$49。

部署

大多数业务应用程序在Windows 应用商店中基本没什么地位。为了改善这种情况,微软允许Windows 8 在部分域中“旁加载(sideload)”应用程序。支持旁加载应用的机器需要满足以下两个条件之一:具有开发者许可证,或者电脑加入了一个活动目录域,该域必须启用了 “允许安装所有受信任的应用程序”组策略设置。

通过Windows 应用商店销售的应用程序将由微软签名。旁加载的应用程序则需要开发者签名。这里使用的认证既可以由内部生成,也可以从授权中心购买。不管采用哪种方式,目标机器都需要将认证的公钥添加到认证存储区中。

利用PowerShell 的add-appxpackage 命令可以将应用注册给特定用户。如果要支持一台机器上的所有用户,可以使用DISM 命令或PowerShell 的cmdlet Add-AppxProvisionedPackage。这会将应用程序添加到“Windows 映像”,所有用户就都能使用了。

关于应用程序部署的更多信息请参考MSDN。

System Center 用户还可以通过自服务门户(Self Service Portal)提供 Windows 8 应用程序。TechNet 上也有一个关于这一主题的视频,参见 Windows 8 Jump Start Module 5: Windows Apps

查看英文原文 Key Technologies for Windows Store Business Apps

2012-12-28 08:151520
用户头像
臧秀涛 略懂技术的运营同学。

发布了 300 篇内容, 共 139.4 次阅读, 收获喜欢 35 次。

关注

评论

发布
暂无评论
发现更多内容

基于MySQL binlog日志,实现Elasticsearch近实时同步实践

热爱java的分享家

Java 架构 程序人生 编程语言 经验分享

肝!Spring JDBC持久化层框架“全家桶”教程

热爱java的分享家

Java 架构 程序人生 编程语言 架构师

Python量化数据仓库搭建系列1:数据库安装与操作

恒生LIGHT云社区

量化投资

【等保】等保3.0是什么意思?有等保3.0吗?

行云管家

网络安全 等保 等级保护 等保2.0

想一个问题,在高并发中,如何部署奇数个节点?

热爱java的分享家

Java 架构 程序人生 编程语言 经验分享

.NET6 引入Autofac

面向对象的猫

.net6 快速上手.net6

元数据管理在数据仓库的实践应用

大数据技术指南

11月日更

轻松搞懂MySQL的执行计划,再也不怕SQL优化了

华为云开发者联盟

MySQL 数据库 sql 执行计划 检索

更改Apollo数据库为oracle

小鲍侃java

11月日更

熵简技术谈 | 熵简科技在资管数据中台的探索与实践

熵简科技

数据挖掘 数据库 大数据 数据中台 数据分析

dart系列之:元世界pubspec.yaml文件详解

程序那些事

flutter dart 程序那些事 11月日更

一周信创舆情观察(11.8~11.14)

统小信uos

一文读懂Hive数据存储格式

五分钟学大数据

11月日更

请说说RPC的一个请求的流程是怎么样的?

热爱java的分享家

Java 架构 程序人生 编程语言 经验分享

SCTL 涅槃重生:投入 RAL 的怀抱

SphereEx

Java 数据库 大前端 ShardingSphere SCTL

uniapp+若依 开发租房小程序

詹Sir

大前端

制作 Flask 程序容器镜像

wong

Python flask k8s Dockerfile

论文解读丨LayoutLM: 面向文档理解的文本与版面预训练

华为云开发者联盟

CV 预训练 LayoutLM模型 无标注 文档理解

低代码——不应该只是玩具

行云创新

云原生 低代码 开发 高效

有一说一,阿里内部SpringBoot王者晋级之路全彩小册开源,让我开了眼

热爱java的分享家

Java 架构 面试 程序人生 编程语言

HBase shell get命令从二进制还原真实值

WindFlying

Python爬虫采集,中介网互联网网站排行榜, 样本数量:58341

梦想橡皮擦

11月日更

【混合云小知识】混合云四种形式简单说明

行云管家

云计算 公有云 私有云 混合云 云管理

SpringBoot+WebSocket实时监控异常

热爱java的分享家

Java spring 架构 程序人生 编程语言

问题也许没有看上去那么简单

神策技术社区

神策数据

“阿里巴巴”再次出手,这份Github新开源303页Spring全家桶高级笔记,让你打开眼界

热爱java的分享家

Java 架构 面试 程序人生 编程语言

快速剪辑-助力度咔智能剪辑提效实践

百度Geek说

架构 后端

鱼龙混杂的低代码市场,企业选型需关注哪些重点?

优秀

低代码 企业数字化转型

​Qt全球峰会2021中国站深入解读最新Qt 6.2长周期版本,助力企业数字化转型

教你用SQL进行数据分析

华为云开发者联盟

Python sql 数据分析 数据 BI 分析工具

【高并发】从源码角度深度解析线程池是如何实现优雅退出的

冰河

Java 并发编程 多线程 高并发 异步编程

Windows商店业务应用程序的关键技术_语言 & 开发_Jonathan Allen_InfoQ精选文章