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:151424
用户头像
臧秀涛 略懂技术的运营同学。

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

关注

评论

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

YOLOX-PAI:加速YOLOX,比YOLOV6更快更强

阿里云大数据AI技术

深度学习 模型优化 企业号九月金秋榜

从零到一,教你搭建「CLIP 以文搜图」搜索服务(二):5 分钟实现原型原创

Zilliz

机器学习 深度学习 搜索引擎

南阳蓝天燃气携手WeLink共创数字蓝天

科技云未来

软件测试 | 测试开发 | app自动化测试(Android)--高级定位技巧

测吧(北京)科技有限公司

xpath

软件测试 | 测试开发 | 简单快速的从GitHub同步代码

测吧(北京)科技有限公司

git

软件测试 | 测试开发 | 测试人生 | 薪资翻倍涨至50W是种什么样的体验?

测吧(北京)科技有限公司

测试

构筑校园  “云资环”助力精准防控

科技云未来

从原理剖析带你理解Stream

华为云开发者联盟

开发 企业号九月金秋榜

边缘服务网格 osm-edge 概览

Flomesh

Service Mesh 服务网格

博睿数据携手亚马逊云科技,助您开启全链路可观测之旅

博睿数据

可观测性 智能运维 博睿数据 全链路 亚马逊云科技

助力企业成就好生意,华为云快成长直播

科技云未来

虚拟机内存管理之内存分配器

字节跳动终端技术

vm 内存 虚拟机 内存管理 内存分配

设计模式的艺术 第二十章中介者模式练习(设计一套图形界面类库,包含若干预定义的窗格(Pane)对象,如TextPane、ListPane等,窗格之间不允许直接引用。基于该类库的应用由一个包含一组窗格的窗口(Window)组成,窗口协调窗格之间的行为)

代廉洁

设计模式的艺术

直播预告 | PostgreSQL 内核解读系列第六讲:PostgreSQL 索引介绍(下)

阿里云数据库开源

数据库 postgresql 阿里云 开源 polarDB

程序员的摸鱼加速器!

Liam

程序员 前端 测试 后端 Postman

Web3的流支付代表Zebec,熊市布局的价值逻辑

鳄鱼视界

软件测试 | 测试开发 | 疫情之下工资翻了2倍多,这4个月学习比工作8年学到的还多

测吧(北京)科技有限公司

软件测试

上了NVMe的路,才能飙起全闪存的车

脑极体

软件测试 | 测试开发 | 用 Pytest+Allure 生成漂亮的 HTML 图形化测试报告

测吧(北京)科技有限公司

pytest Allure

一文看懂Mysql锁

六月的雨在InfoQ

MySQL MySQL锁 9月月更 Mysql死锁 Mysql锁粒度

华为云WeLink直播助力高校毕业典礼:这届毕业生,我们云上嗨

科技云未来

基于MonoRepo的Web端CI/CD实践与优化

RingCentral铃盛

企业号九月金秋榜

软件测试 | 测试开发 | Jenkins 集成 Android 代码检查

测吧(北京)科技有限公司

android jenkins

一线技术人应该关注的四种思维能力

阿里巴巴中间件

阿里云 技术文章

15款Python编辑器,你都使用过哪一款

千锋IT教育

软件测试 | 测试开发 | 测试人生 | 双非学历入职名企大厂还薪资翻倍?

测吧(北京)科技有限公司

面试 测试

华为云快成长直播ERP专场,以数据驱动企业智慧变革

科技云未来

从任正非的内部信,看系统开发公司如何度过寒冬

CRMEB

高并发场景下,6种方案,保证缓存和数据库的最终一致性!

C++后台开发

数据库 缓存 高并发 后端开发 C++开发

软件测试 | 测试开发 | app自动化测试(Android)-- Capability 使用进阶

测吧(北京)科技有限公司

Andriod

软件测试 | 测试开发 | app自动化测试(Android)--触屏操作自动化

测吧(北京)科技有限公司

自动化测试 app测试

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