WindowsPhone7应用开发全解析
立即解锁
发布时间: 2025-08-17 00:57:20 阅读量: 2 订阅数: 2 

### Windows Phone 7应用开发全解析
#### 1. Windows Phone 7开发基础
在开发Windows Phone 7应用时,数据通信和同步技术的选择会受到这些技术的可用性和稳定性的影响。例如,若选择使用WCF Data Services以标准Atom Pub REST格式公开数据供Windows Phone 7设备使用,可以使用Microsoft OData Client Library for Windows Phone 7,而无需创建自定义代理。不过,截至目前,该库的最终版本尚未发布。
此外,一些原本为桌面或服务器设计,或专门针对在网页浏览器中运行的Silverlight应用的框架或组件,可能与Windows Phone 7操作系统不兼容。因此,在将这些组件和框架应用于应用程序设计之前,应在模拟器和物理设备上进行测试。
以下是一些开发相关的常见问题及答案:
| 问题 | 选项 | 答案 |
| ---- | ---- | ---- |
| 设计Windows Phone 7应用的UI时应考虑什么? | a. 使其在纵向和横向模式下都能正常工作;b. 使其色彩丰富且高度可配置;c. 最大化每个页面上的控件数量;d. 重用现有的Web或桌面应用UI | a |
| 可以使用哪些语言和框架来创建Windows Phone 7应用? | a. Silverlight;b. C++;c. XNA;d. Microsoft Visual Basic® | a、b、c、d |
| 以下哪些不是Windows Phone 7应用的墓碑化和重新激活过程中可能发生的事件? | a. 激活;b. 加载;c. 恢复;d. 停用 | b |
| 应考虑使用哪些方式存储应用程序使用的数据? | a. 使用手机上的独立存储;b. 使用手机上内置的SQL Server® Compact Edition数据库;c. 使用手机上的文件系统;d. 将其存储在服务器上并与手机同步 | a、b、c、d |
| 应考虑使用哪些技术来保护Windows Phone 7应用程序? | a. 永远不要在手机上存储任何数据;b. 加密存储在手机上的所有敏感数据;c. 与服务器通信时,对包含敏感数据的所有请求使用HTTPS;d. 对设计和代码进行安全分析 | b、c、d |
| 以下哪些是最大化Windows Phone 7应用程序性能的有用技术? | a. 如果不需要某些功能(如位置服务),则将其关闭,或在使用后尽快关闭;b. 在代码中使用单字母变量名;c. 使用良好的编码实践并在适当的地方进行简化来优化代码;d. 通过避免使用无法在图形处理单元(GPU)上运行的代码,充分利用GPU | a、c、d |
#### 2. Tailspin公司的场景与策略
Tailspin是一家约有20名员工的初创ISV公司,专门使用Microsoft技术开发解决方案。其旗舰产品是名为Surveys的在线服务,可让其他公司或个人进行自己的在线调查。Tailspin希望将该服务扩展到移动用户,让Surveys应用的订阅者能够向Windows Phone 7设备用户发布调查,这些用户可以使用移动应用从实地收集调查数据。
Tailspin的策略是作为新技术的早期采用者获得竞争优势,尤其是在移动设备和云计算领域。其策略可概括为“尝试、快速失败、学习,然后再次尝试”。Tailspin决定以Surveys移动客户端应用作为其首款Windows Phone 7产品。
Tailspin在扩展Surveys应用功能时,根据订阅者的反馈确定了四个关键改进领域:
1. 应用应支持更广泛的问题类型,并允许受访者在调查回复中包含额外的数据,如图片、音频和位置数据。
2. 人们应能够在远离计算机时提供调查回复。
3. 订阅者希望能够获取回答调查的受访者的地理位置。
4. 订阅者希望能够主动寻找调查受访者,而不是等待受访者通过网页或电子邮件中的链接访问调查网站。
在使用Windows Phone 7平台时,Tailspin面临可靠性、安全性和连接性三个关键问题。由于Windows Phone 7设备可能只是间歇性地连接到互联网,移动应用必须能够可靠地存储收集到的数据,直到可以将其发送到云端应用。同时,Tailspin还希望确保存储在Windows Phone 7设备上的任何数据都能安全存储。
#### 3. Surveys应用架构
Surveys应用有两个顶级组件:
- 后端:由Tailspin托管在Windows Azure上,使订阅者能够创建、发布和分析调查。
- 移动客户端前端:运行在Windows Phone 7设备上,使调查员能够收集调查回复数据并将其发送到后端。
Tailspin推出移动客户端应用以支持Surveys服务的新功能,包括:
- 调查员能够根据不同标准过滤可用调查。
- 能够从调查受访者那里收集丰富的数据,如受访者的位置、语音记录、图片、条形码和从设备传感器捕获的物理测量数据。
- 应用程序能够通知调查员有新的调查可用。
参与该场景的角色有三个:
- Tailspin(ISV):开发了多租户的Surveys SaaS应用,并使其在云端运行。同时,还开发了适用于Windows Phone 7设备的移动客户端应用,并通过Windows Marketplace for Mobile提供给调查员。
- Fabrikam和Adatum(订阅者):设计和发起调查,等待回复,然后分析应用程序收集的结果。
- 调查员(Windows Phone 7用户):通常在家工作,根据预定义的标准订阅调查,并在新调查发布时收到通知。他们可以使用Windows Phone 7设备自己回答调查问题,或采访其他人并使用设备捕获调查回复数据。
Tailspin的商业模式是向订阅者收取每月使用Surveys应用的费用,并支付应用运行的实际成本。Surveys移动客户端对调查员免费,收集多个调查回复的调查员还可以获得补偿。Tailspin目前正在研究如何将优惠券直接发送到Windows Phone 7设备进行扫描,还计划使用Microsoft Advertising SDK for Windows Phone 7在移动客户端中嵌入广告以增加收入。
#### 4. 移动客户端应用组件
Windows Phone 7设备上的Surveys应用由三个组件组成:
- 用户界面(UI):使用户能够完成调查和执行其他任务。
- 存储库:保存调查定义和调查回复。
- 同步组件:负责从Tailspin后端下载调查定义,并上传已完成的调查数据。
为了使Windows Phone 7应用能够与后端通信,云端组件现在包括一个API,用于公开移动应用所需的功能。Tailspin决定使用Windows Communication Foundation (WCF) REST在网络上传输数据。Windows Phone 7应用还必须与后端进行身份验证,以便后端确定应向移动客户端提供哪些调查,并跟踪哪些回复来自哪个用户。在本场景中,移动客户端使用基本身份验证与后端进行身份验证,但设计上可以扩展以接受更复杂的机制,如基于声明的方法。
应用程序使用推送通知来告知移动客户端有新的调查可供下载,即使移动Surveys应用未运行,这些推送通知也能到达Windows Phone 7设备。Surveys应用还包括一个移动客户端网站,用于让Windows Phone 7设备从Windows Marketplace下载和安装客户端应用。Tailspin计划使用该网站托管其他资源,如移动应用用户的帮助和指导说明。
以下是移动客户端应用的主要组件关系图:
```mermaid
graph LR
classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px
A(用户界面):::process --> B(存储库):::process
A --> C(同步组件):::process
B --> C
C --> D(Tailspin后端):::process
E(设备传感器):::process --> A
F(通知服务):::process --> A
G(网络服务):::process --> C
G --> D
```
#### 5. 移动客户端开发
Tailspin开发移动客户端应用时,
0
0
复制全文
相关推荐










