在发表了Windows Phone 7发布啦以后,前天晚上又看了一些Windows Phone 7的视频。

Get Microsoft Silverlight

来自channel9的视频,介绍了新出的Windows Phone 7的功能,看完这个视频,第一感觉Windows Phone is awesome. 于之前的Windows Mobile PPC甚至Windows Mobile 6.5差别很大。由于没有拿到真机,也没有ROM,所以只能猜想一下。

多点触摸(Multi-touch)

Multi-touch似乎成为触摸屏移动设备的必备功能了,很多人也把之作为iPhone的制胜法宝,其实微软在很久以前就推出了Microsoft Surface支持Multi-touch。

从视频看Windows Phone7是完全支持Multi-touch的。其实之前HTC也模拟了一些Multi-touch的功能,但是只能在HTC的Today Shell里面使用,不能用于其他应用程序,所以作用不大,这次微软推出自己的Multi-touch,我想是从底层实现的,能支持任何的应用程序,在视频中演示了如何在IE上使用Multi-touch,效果还是很理想的。我想微软可以像在Windows Mobile 6.5支持Gesture的API那样通过消息来支持多点触摸。下面是iToday使用Gesture的代码。

////  FUNCTION: ProcessGesture(HWND, UINT, WPARAM, LPARAM)////  PURPOSE:  Handles processing of WM_GESTURE command.//BOOL PanelManager::ProcessGesture(HWND hWnd, UINT, WPARAM wParam, LPARAM lParam){    BOOL fHandled = FALSE;    GESTUREINFO gi = {sizeof(gi)};

// Go get the gesture - will return FALSE if the gesture engine is not present in the system.if(TKGetGestureInfo(reinterpret_cast<HGESTUREINFO>(lParam), &gi))    {        PanelBase *pPanel = m_oSwitcher.GetActivePanel();if( NULL == pPanel)        {returnFALSE;        }

switch(wParam)        {caseGID_PAN:        {if(m_fAnimating)            {//如?果?当?前?正?有?Animation进?行?,?停?止?并?显?示?当?前?的?视?图?pPanel->SnapBackToFrame();                m_fAnimating = false;            }if(GF_BEGIN == (gi.dwFlags & GF_BEGIN))            {                pPanel->RecordLastPanPoint(gi.ptsLocation);            }else{                pPanel->CalculateStartPointInMemDC(gi.ptsLocation);                pPanel->RecordLastPanPoint(gi.ptsLocation);

                pPanel->ProcessPan( gi.ptsLocation );            }            fHandled = TRUE;        }break;

caseGID_SCROLL:        {//要?考?虑?Switcher区?域?的?动?画?和?Panel区?域?的?动?画?是?否?可?以?同?时?进?行?,?目?前?这?样?做?是?不?可?以?同?时?的?。?if(!m_fAnimating)            {

                HRESULT hr = pPanel->ProcessPanEnd(                                 (int)GID_SCROLL_VELOCITY(gi.ullArguments),                                 (int)GID_SCROLL_ANGLE(gi.ullArguments) );if( SUCCEEDED(hr) )                {                    m_fAnimating = true; // we are now animating}            }

            fHandled = TRUE;        }break;

caseGID_HOLD:break;

caseGID_SELECT:break;

caseGID_END:        {//要?考?虑?Switcher区?域?的?动?画?和?Panel区?域?的?动?画?是?否?可?以?同?时?进?行?,?目?前?这?样?做?是?不?可?以?同?时?的?。?if(!m_fAnimating)            {                HRESULT hr = pPanel->ProcessPanEnd( 0, 0 );if( SUCCEEDED(hr) )                {                    m_fAnimating = true; // we are now animating}            }// GID_BEGIN/GID_END should always be send to DefGestureProc}break;        }    }else{        DebugPrintString(L"The gesture engine is not present in the system.\n");    }

returnfHandled;}

WPARAM wParam和LPARAM lParam是万能变量,能自由转换,这样也能支持多点触摸。

同步

Windows Moible 6.5推出了MyPhone功能,可以把手机上的信息同步到微软的在线帐号上。同时Windows Mobile还支持传统的同步方式,例如ActiveSync。关于ActiveSync可以参考 Windows Embedded CE和Windows Mobile下ActiveSync开发 。

从视频看,微软的人说Windows Phone 7支持Zune Software来sync,这是ActiveSync compatible 的协议,如果是ActiveSync的协议,我想我们还是可以自由操控Windows Phone 7,原先基于ActiveSync开发的同步软件还是可以继续使用。之前看过一篇关于iPhone七宗罪的文章,其中之一是iPhone 只能使用iTune来同步数据,而且只能同步到一台机器去,不能用其他机器去同步数据,我希望Windows Phone 7不会把这个缺点复制了。之前网上一直流行说新版的Windows Phone7会封闭起来,不允许自己同步数据,不允许自己安装软件,希望不是这样。

多任务

在视频中看不到任何多任务的信息,因此是否支持多任务在Windows Phone 7论坛上引起巨大的讨论,见这Multitasking support链接,一下子就到13页了。单任务也是iPhone七宗罪的其中一宗,有iPhone支持者说单任务是为了更好的提高用户体验,确实有这个原因。使用的Windows Mobile的时候,经常给那个关闭按钮"X"所迷惑,最小化的程序也很难找到。因此有些手机厂商为用户提供一个soft reset按钮,当系统运行慢的时候可以重启。iPhone不存在这个问题,但是同时又有其他问题,例如接到电话的时候其他程序会自动退出了。在视频中,Windows Phone7的任务切换是点击Start按钮,这也是Windows Phone 7的三个硬件按钮之一,作用重大,但是每次都会到Hubs页面,到底有没有关闭原先程序却不知道。

其实支持多任务是必须的,Windows Phone7底层肯定支持多任务,否则Hubs页面不可能同时更新不同的Hub的信息。但是微软是否给开发者或者用户提供多任务,多任务如何切换还是未知数,多任务做的不好会大大影响用户体验,原先的Windows Mobile就是这样,希望微软这次有大突破。

SDK

在First Windows Phone 7 apps sighted!文章中说,微软会在下个月发布Windows Phone 7 SDK。但是不是官方信息,不知道可靠程度。

当前在Windows Mobile 6.5下有三种开发模式: Native C++, .NET Compact Framework和Widget。可以参考一下Windows Mobile开发,Native C++ PK .NET Compact Framework 和Windows Mobile 6.5 新功能widget开发。

但是我更加期待的是Silverlight for Windows Phone或者WPF for Windows Phone。XNA等等模式,我不怕学习,我就怕我们还是需要用Win32来开发Windows Phone7,这会让我彻底失望,可以想象如果用GDI做那个Hubs的页面需要多长时间,不是不能做而是成本太大,开发者会失去兴趣。关于Silverlight可以参考 Silverlight for Windows Mobile非官方预览。

我十分期待SDK,看能为我们带来什么惊喜。

发布时间

微软的官方发布时间是holiday,什么时候是holiday,这次微软玩悬念。我想微软是不想玩的,但是Windows Phone7还没有完全准备好,到底什么时候准备好,估计微软还没有准确的计划,所以就说holiday。在美国一年有三大holiday,复活节,感恩节和圣诞节。复活节在4月初,是纪念耶稣为世人赎罪而死,然后复活的故事。不知道Windows Phone7会不会在复活节的时候复活一下。如果等到圣诞节那就太久了,看看Android的升级速度,圣诞的时候Hubs都做好了,Windows Phone还在生产线上。

这些都是我的猜想,欢迎讨论。

转载于:https://www.cnblogs.com/procoder/archive/2010/02/18/About-Windows-Phone-7.html

关于Windows Phone 7的猜想相关推荐

  1. 关于windows消息机制的猜想

    1. 正常情况下一个进程里面只有一个主线程而已. 主线程负责消息的读取和分析分发. 消息是保存在消息队列里面,消息队列是跟线程相关的.每一个线程都有一个消息队列(工作线程默认没有,但是随便给他发送一个 ...

  2. [视频]Silverlight for Windows Phone 7基本开发过程以及Push Button控件的使用

    简介 通过视频的方式讲述Silverlight for Windows Phone 7基本开发过程以及Push Button控件的使用,同时讲述Silverlight for Windows Phon ...

  3. 关于BitmapImage EndInit()时报值不在范围内的异常

    值不在预期的范围内.ArgumentException 在 System.Windows.Media.ColorContext.GetColorContextsHelper(GetColorConte ...

  4. cqh-class 文件内容,类加载过程,编写第一个程序

    文章目录 2. 编写第一个程序 2.1 编写源代码并运行 2.1.1 创建 .java 文件编写源码 2.1.2 配置环境变量 2.1.3 解释代码含义 2.1.4 编译与运行 2.2 class 文 ...

  5. 可用于电子书阅读器的开源阅读器软件项目

    可用于电子书阅读器的开源阅读器软件项目 经过2009年电子书市场红红火火的发展,计划进入电子书市场的品牌厂商及供应链上相关的厂商大概有二三十家,相信当下很多进行MP3.MP4/5.GPS 开发的Des ...

  6. Windows Mobile四大猜想 能否取代Windows?

    Windows Mobile四大猜想 能否取代Windows? 原文出处: http://news.csdn.net/n/20070710/106264.html "在微软所有新兴业务中,W ...

  7. Windows 10 RedStone2值得期待的五大功能猜想

    很快微软就将发布Win10一年周年更新(Windows 10 Anniversary Update),这版升级为我们带来了手写笔支持和Cortana语音助手等新功能.即便这样,升级之后的Windows ...

  8. Linux未来猜想:被遗忘还是终结Windows?

    在八十年代末的时候,有人问起比尔盖茨怎么看待Unix与微软构成的竞争,他笑着问道:"哪个Unix?" 这也是Linux的现状.哪个Linux?好像只有Linux内核本身才配得上&q ...

  9. windows 2008 (非R2)使用批处理文件调整组策略过程记录

    2021年12月8日,对windows server 2008 (不是 windows server 2008 R2) 调整组策略.其中有一部分,无法通过图形界面(gpedit.msc)进行,只能在c ...

最新文章

  1. iOS之UI--涂鸦画板实例
  2. 下图为双总线结构机器的数据通路_PDPS机器人虚拟调试 弧焊仿真 第一课 弧焊项目创建...
  3. 【刷题】HDU 4966 GGS-DDU
  4. 在Linux上搭建VisualSVN Server(svn服务端)
  5. IT人不要一直做技术(转载)
  6. Java中间MD5加密算法完整版
  7. c#字符编码,System.Text.Encoding类,字符编码大全:如Unicode编码、GB18030、UTF-8,UTF-7,GB2312,ASCII,UTF32,Big5
  8. MutationObserver监听页面是否加载完成
  9. 成都程序员俱乐部通知
  10. [转载]JXTA技术与应用发展
  11. 动环监控系统中B接口的实现
  12. MySQL 怎么插入10天前的日期_使用 MySQL 的 SQL_MODE 有哪些坑,你知道么?
  13. 吴恩达深度学习课程值不值得学?四晚学完的高手给你建议
  14. IE8兼容性问题及解决方案
  15. Java--文件(File)
  16. 默哀这一刻 我们的心紧紧相连
  17. No module named ‘tf_slim‘解决办法
  18. 【车牌识别和动态称重系统】(二)基于树莓派+HyperLPR的中文车牌识别
  19. Exploratory Social Network Analysis with Pajek(第三版)6-1
  20. 如何实现windows XP定时关机?

热门文章

  1. JavaFX 基础介绍
  2. 什么?JPA狗用了都摇头??
  3. COM Apartment (套间)
  4. python中的继承和多继承及抽象
  5. Cmake Practice(一)
  6. ospf lsu报文格式
  7. 【数据库】redis数据持久化
  8. poj1442~优先队列oye
  9. [网赚项目] 一个刚需搞钱项目,可多重变现!月入好几个w
  10. [bigdata-83] python3+图数据库neo4j 电话号码 身份证 黑名单 创建节点 标签 关系 增标记 增关系 查询pattern示例