【IT168技术】微软近日在Windows Phone 7 Series的官方论坛上列出了一些Windows Phone 7 Series开发的常见问题的解答 ,其中我们以前一直不明确的一些问题(例如多任务,沙箱,网络等等)都有了解答。为了方便大家我将其一一翻译出来,希望能够对您带来一些帮助。当然,如果您愿意的话,去查看原文会获得更加准确的理解。
前后台中的应用程序进程
1、我的程序能运行在后台吗?
不可以,Windows Phone 7 Series的应用程序模型只支持在前台执行。如果另外一个程序(第三方或者内置的)在你的程序正在运行的时候启动,你将会得到一个你的程序将要被终止的事件通知。
2、我的程序从前台离开时会发生什么?
你的应用将会收到一个它将被关闭的通知。你的应用从前台离开的时刻并没有被马上终止,如果你需要保留状态,你需要自己编写一些逻辑来处理这些事情。
3、当我的程序从前台离开后重新运行的时候会发生什么?
你的应用程序将会从最初始的状态开始运行。如果需要保留状态,你应该自己编写逻辑来判断状态是否被保留并恢复它。
4、这是否意味着没有办法来编写应用进行有效的后台更新?
不是!我们提供了可以让你的应用所利用的Push Notification服务。例如聊天程序,轮流操作的游戏以及其他类型的依赖外部事件的程序都可以完美的利用Push Notification。你可以从MSDN的这篇文章上了解更多关于Push Notification的信息: http://msdn.microsoft.com/en-us/library/ff402558%28VS.92%29.aspx
5、如果我的程序没有运行,我可以利用Push Notification来启动我的程序吗?
不能直接运行。当接收到一个对你的程序的Push Notification的时候,你的程序的令牌可以被更新至这新的信息,这时候用户将会被提示启动你的程序。程序并不会直接自动启动。
6、我可以设置一个定时器来启动我的程序吗?
不行,是否启动你的程序取决于用户。
7、我的程序可以被系统事件启动起来吗?
不太可能,但是它仍然是一个问题。绝大部分情况下,不可能由一个系统事件来启动起你的程序。但是当你的程序启动的时候或许你可以获得一个通知缓存。对于这个情况,当我们了解更多的时候我们会公布出来。
8、如果我不需要用户界面,我能编写一个服务的DLL驻留在系统中吗?
不行,你将不能编写系统服务DLL。所有的程序集都将运行在它们自己的独立的沙箱中,和操作系统以及其他应用程序隔离开。