<?xml version="1.0" encoding="UTF-8"?><!-- generator="bbPress" -->

<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
>

<channel>
<title>青岛Silverlight中文社区: Recent Posts</title>
<link>http://www.mdong.org/bbs/</link>
<description>Silverlight Qingdao Chinese BBS</description>
<language>en</language>
<pubDate>Tue, 09 Mar 2010 23:07:41 +0000</pubDate>

<item>
<title>langmuir on "Android UI"</title>
<link>http://www.mdong.org/bbs/topic.php?id=62#post-83</link>
<pubDate>Wed, 24 Feb 2010 00:34:32 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">83@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;default-&#38;gt;pressed-&#38;gt;selected&#60;/p&#62;
&#60;p&#62;按钮的三种状态&#60;/p&#62;
&#60;p&#62;--&#60;/p&#62;
&#60;p&#62;菜单/启动图标 48x48 +6 png&#60;br /&#62;
状态栏 25x25 +2 png&#60;br /&#62;
标签/对话框/列表视图 32x32 png
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-82</link>
<pubDate>Sun, 21 Feb 2010 16:56:06 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">82@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【9】SmartPhone的硬件结构&#60;/p&#62;
&#60;p&#62;如何区别智能手机（SmartPhone）与功能手机（FeaturePhone）？&#60;/p&#62;
&#60;p&#62;有一种观点认为，智能手机本质上是功能手机与便携式电脑（Laptop PC）的结合。功能手机的功能受限于制造厂商的预制，也就是说，用户基本上只能使用手机出厂时已经预制的功能，而不能自主下载并安装新的应用。而个人电脑出厂时，多半是裸机，用户根据自己的喜好，自主决定安装哪些软件。一言以蔽之，所谓智能手机，就是用户能够自主安装应用软件的手机。&#60;/p&#62;
&#60;p&#62;按照这个定义，智能手机与上网本（Netbook）有什么本质区别呢？&#60;/p&#62;
&#60;p&#62;智能手机与上网本并不存在本质区别。如果说电脑与功能手机是一段光谱的两极，那么智能手机与上网本都处于两极的中间。智能手机更接近功能手机，强调小巧，省电。而上网本更趋近与电脑，强调功能，但是代价是尺寸较大，耗电，续航时间短。例如，Apple公司最新推出的iPad上网本，实际上就是放大了尺寸和功能的iPhone智能手机，见Figure 9.1 并参考文献[1] 。&#60;/p&#62;
&#60;p&#62;Figure 9.1 iPad notebook is an enlarged iPhone smartphone. [1]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm5.static.flickr.com/4063/4348114249_e5bbef101b_o.png&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm5.static.flickr.com/4063/4348114249_e5bbef101b_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;从硬件结构上看，不妨把智能手机粗略地概括为电脑加移动网卡。我们在上一节，“自己动手做电脑手机”一文中，大致介绍了电脑加移动网卡的具体做法。&#60;/p&#62;
&#60;p&#62;智能手机 == 电脑 + 移动网卡，这个提法比较粗略，更精准的提法应当是，智能手机的硬件结构分为AP和BP两个部分。AP，应用程序处理器（Application Processor），负责大部分应用程序的执行。而BP，基带处理器（Baseband Processor），也称为通信处理器（CP，Communication Processor），负责所有通讯软件的执行。&#60;/p&#62;
&#60;p&#62;如果说功能手机的硬件结构，以BP为主体，添加了一些额外的应用程序和相应的硬件外设。那么智能手机作为功能手机的进一步发展，在BP的基础上，增加了AP，专门用于强化对应用程序的支持。&#60;/p&#62;
&#60;p&#62;但是AP并不等同于电脑主板，这主要体现在CPU的配置上。一方面智能手机AP的CPU的运算速度，应当趋近于电脑CPU的速度。以往智能手机AP的CPU，速度通常是200MHz以上，而近期高档智能手机AP的CPU速度，有的已经达到1GHz。另一方面，智能手机AP的CPU不能一味追求速度，而且要均衡CPU尺寸，便于携带，还要考虑省电，延长续航时间。&#60;/p&#62;
&#60;p&#62;在权衡了CPU的速度，尺寸，以及耗电量等等诸多因素以后，ARM系列CPU成为智能手机AP的CPU的主流。当然，并不是所有厂商都接受这个观点，例如Intel就不看好ARM系列。&#60;/p&#62;
&#60;p&#62;2006年，Intel把ARM指令兼容内核的StrongARM/XScale产品线，作价6亿美元，卖给了Marvell[2]。同时，Intel着力发展x86内核的Atom CPU，与ARM系列争夺手机芯片市场。但是代号为Menlow的第一代Intel手机芯片，由于功耗和电源管理无法满足手机的要求，无法挑战ARM系列在手机芯片市场的地位，只好转战上网本 [3]。&#60;/p&#62;
&#60;p&#62;但是在2010年1月份举办的美国家电年度展会（CES）上，韩国厂商LG展示了一款新手机，LG GW990，见Figure 9.2。这款手机的看点，是使用了代号为Moorestown的第二代Atom CPU芯片。据传闻，Moorestown的续航时间长达24小时 [4,5]。&#60;/p&#62;
&#60;p&#62;Figure 9.2 LG GW990, with Intel Moorestown Atom CPU inside [5].&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://www.blogcdn.com/www.engadget.com/media/2010/01/intel-keynote-ces10-0175-rm-eng.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://www.blogcdn.com/www.engadget.com/media/2010/01/intel-keynote-ces10-0175-rm-eng.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;虽然Moorestown似乎很有潜力，但是就目前而言，ARM系列CPU在手机芯片市场的霸主地位，是毋庸置疑的。例如，最近几年，多款被市场热捧的智能手机，它们的CPU都不约而同地选用了以ARM Cortex A8为内核的芯片。&#60;/p&#62;
&#60;p&#62;1. Palm公司曾经在1990年代以掌中宝Palm PDA风光一时。后来一度沉寂，迷失了自己的定位。2009年1月，在美国家电年度展会（CES）上，Palm高调宣布他们研制的Palm Pre手机即将上市。这款手机的确很炫，获得该年度CES大奖。&#60;/p&#62;
&#60;p&#62;   Palm Pre手机于2009年6月正式上市，它使用的CPU芯片，是德州仪器（TI）于2007年推出的OMAP3430芯片，而OMAP3430芯片的内核，是ARM Cortex-A8 [10]。&#60;/p&#62;
&#60;p&#62;2. 同样在2009年6月份，Apple公司的iPhone 3GS也上市，把Palm Pre的风头抢了过去。iPhone 3GS的CPU，选用的是Samsung S5PC100芯片，这款CPU的内核也是ARM Cortex-A8 [11]。&#60;/p&#62;
&#60;p&#62;3. 老牌手机制造商Moto，业绩持续下滑。但是在2009年底，老树新花，Moto推出以Google Android v2.0为操作系统的Droid，火爆一时。与Palm Pre手机不谋而合的是，Droid的CPU也选用了TI的OMAP3430芯片，其内核也是ARM Cortex-A8 [12]。&#60;/p&#62;
&#60;p&#62;4. Google一直声称自己不介入手机制造。但是在2010年1月，由台湾HTC代工的Nexus One，却是Google自己的品牌手机。Google Nexus One手机，内置CPU芯片是高通（Qualcomm）的Snapdragon系列QSD 8250芯片。该芯片的内核也是ARM Cortex-A8 [13]。&#60;/p&#62;
&#60;p&#62;Figure 9.3 Palm Pre, iPhone 3GS, Moto Droid, Google Nexus One, all uses ARM Cortex-A8 CPU [10,11,12,13]。&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm5.static.flickr.com/4069/4351123874_7c626a9175_o.png&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm5.static.flickr.com/4069/4351123874_7c626a9175_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;智能手机的CPU芯片，核心是处理器内核，例如ARM系列内核。除了内核以外，还包括其它外设组件。下面以TI的OMAP3430芯片为例，解剖一下智能手机CPU芯片内部结构。Figure 9.4是OMAP3430芯片的内部结构图，其中内核是ARM Cortex-A8。&#60;/p&#62;
&#60;p&#62;ARM系列包括型号众多的内核，为什么大家不约而同地选择ARM Cortex-A8？选择的要点是功能，速度，耗电量三者的权衡。&#60;/p&#62;
&#60;p&#62;ARM Cortex-A8使用的指令集是ARMv7。StrongARM系列，使用的指令集是ARMv4。ARM7系列和ARM9系列，用的是ARMv4和ARMv5指令集。ARM11系列，用的是ARMv6指令集。&#60;/p&#62;
&#60;p&#62;指令集版本号越高，一方面意味着指令的数量越多，从而导致芯片内部电路越复杂，制造难度也越大。另一方面，指令集越大，指令数量越多，也说明芯片的功能越强，运行程序的速度越快。Cortex内核，是目前所有ARM系列CPU芯片中，功能最强，速度最快的一类。ARM9系列CPU的速度是 200-400MHz，ARM11系列是400-800MHz，而ARM Cortex A8/A9高达800-1000+MHz [7,8,9]。&#60;/p&#62;
&#60;p&#62;ARM Cortex A8/A9功能强，速度快，而且比较省电，这就是以ARM Cortex A8/A9为内核的手机CPU芯片，被市场推崇的原因。当然，假如Intel的第二代Atom CPU，Moorestown，成功地降低了耗电量，那么就有可能冲击ARM Cortex A8/A9的霸主地位。&#60;/p&#62;
&#60;p&#62;除了ARM Cortex-A8内核以外，OMAP3430芯片还包含其它专用处理器内核。&#60;/p&#62;
&#60;p&#62;1. 视频音频编码解码加速器 IVA2+，用于支持MPEG4，WMV9，H.264以及RealVideo10等等主流流媒体标准，实现视频会议，并让手机具备录制和播放DVD质量的视频的能力。&#60;/p&#62;
&#60;p&#62;2. PowerVR SGX图形内核（GPU），用于增强2D和3D图片的渲染效果和速度。支持OpenGL ES2.0 and OpenVG。&#60;/p&#62;
&#60;p&#62;3. 图像信号处理内核（ISP），用来实现相机系统的高画质，强性能，和低成本。支持12M像素相机模块；实时JPEG图像压缩。&#60;/p&#62;
&#60;p&#62;Figure 9.4 TI OMAP3430 CPU Architecture&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://focus.ti.com.cn/graphics/wtbu/blockdiagrams/l4_omap3430.gif&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://focus.ti.com.cn/graphics/wtbu/blockdiagrams/l4_omap3430.gif&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;选择什么样的CPU芯片，就基本决定了手机主板的结构。例如，TI的OMAP3430芯片，本身不处理电源管理以及音频编码解码（Audio/Voice Codec），这两项工作，交给了TWL5030专用芯片处理，如Figure 9.4所示。因此，以TI的OMAP3430芯片为CPU的主板结构，与选用其它芯片为CPU的主板结构，在扬声器，耳机和话筒的连线上，有显著不同，参见Figure 9.5中红框标识部分。&#60;/p&#62;
&#60;p&#62;Figure 9.5中上图为Moto Droid的逻辑结构图，下图为iPhone 3GS的。图中央的黑色方块，显示了应用程序处理器（AP）的CPU，Moto Droid的CPU是TI的OMAP3430，而iPhone 3GS的CPU是Samsung的S5PC100。Samsung S5PC100芯片自身拥有音频编码解码的功能[14]，所以iPhone 3GS的扬声器，耳机和话筒直接连线到S5PC100芯片上。&#60;/p&#62;
&#60;p&#62;Figure 9.5  Moto Droid vs iPhone 3GS internal logical structures [15,16].&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm5.static.flickr.com/4028/4351590146_a5c13eff04_o.png&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm5.static.flickr.com/4028/4351590146_a5c13eff04_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 9.5 中央有两个黑色方块，右边的是应用程序处理器（AP）的CPU，左边的是基带处理器（BP）的CPU。Moto选用了高通（Qualcomm）的QSC6085芯片，作为BP的CPU。而iPhone 3GS选用的是英飞凌（Infineon）的芯片。关于BP的结构，我们将在下一章介绍。&#60;/p&#62;
&#60;p&#62;智能手机的主板，以AP和BP的CPU芯片为核心，理解了这两块芯片，就不难理解手机主板的逻辑结构，例如Figue 9.5显示的Moto Droid和iPhone 3GS两款手机的主板逻辑结构。&#60;/p&#62;
&#60;p&#62;理解了主板逻辑结构以后，再看主板实物，就不至于眼花缭乱。Figure 9.6显示的是Moto Droid和iPhone 3GS两款手机的主板实物照片。把Figure 9.5和Figure 9.6对照着看，有助于理解。需要注意的是，实物图中看不到CPU芯片，因为在主板中，CPU和RAM是叠加在一起的。这个做法叫Package on Package（PoP），它的好处主要是节省主板空间[17]。&#60;/p&#62;
&#60;p&#62;Figure 9.6 Moto Droid vs iPhone 3GS PCBs [15,16].&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm5.static.flickr.com/4061/4351590148_f6a392d8b9_o.png&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm5.static.flickr.com/4061/4351590148_f6a392d8b9_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;总结一下，本章简要介绍了智能手机的硬件结构。硬件结构中，CPU芯片是核心，其它外围设备，包括LCD，相机，扬声器，话筒等等，都围绕CPU芯片这个核心布局连线。在CPU芯片内部，内核是关键。ARM系列是目前主流的手机CPU内核。其中，最近几年很热门的是ARM Cortex A8/A9。&#60;/p&#62;
&#60;p&#62;下一章，我们将讨论智能手机中基带处理器（BP）的实现方式。比较各个不同的实现方式之间，有哪些差别，各自有什么优缺点, 以及AP与BP两者协作的方式。&#60;/p&#62;
&#60;p&#62;Reference,&#60;/p&#62;
&#60;p&#62;[1] Comparison of iPad and iPhone technical specs. (http://www.apple.com/ipad/specs/;http://www.apple.com/iphone/specs.html)&#60;br /&#62;
[2] Intel sold StrongARM/XScale to Marvell for 600 million. (http://www.eetimes.com/news/latest/showArticle.jhtml?articleID=189601851)&#60;br /&#62;
[3] Intel drops Centrino Atom Brand after 5 months. (http://www.pcworld.com/businesscenter/article/149791/intel_drops_centrino_atom_brand_after_five_months.html)&#60;br /&#62;
[4] Intel demonstrates Moorestown smartphone. (http://www.anandtech.com/cpuchipsets/showdoc.aspx?i=3716)&#60;br /&#62;
[5] Intel Keynote CES 2010, introducing Moorestown. (http://www.engadget.com/2010/01/07/live-from-paul-otellinis-intel-ces-keynote/)&#60;br /&#62;
[6] Introduction to TI OMAP3430 micro-processor. (http://focus.ti.com.cn/cn/general/docs/wtbu/wtbuproductcontent.tsp?templateId=6123&#38;#38;navigationId=12643&#38;#38;contentId=14649)&#60;br /&#62;
[7] ARM Processor Survey. (http://en.wikipedia.org/wiki/ARM_architecture)&#60;br /&#62;
[8] ARM Processor Selector. (http://www.arm.com/products/CPUs/core_selector.html)&#60;br /&#62;
[9] ARM Core Overview. (http://digital.knu.ac.kr/lecture/%EC%82%BC%EC%84%B1%ED%85%8C%ED%81%AC%EB%85%B8MBA/2_arm_core.pdf)&#60;br /&#62;
[10] Palm Pre technical spec. (http://pdadb.net/index.php?m=specs&#38;#38;id=1688&#38;#38;c=palm_pre_cdma)&#60;br /&#62;
[11] iPhone series technical spec. (http://en.wikipedia.org/wiki/IPhone)&#60;br /&#62;
[12] Moto Droid technical spec. (http://developer.motorola.com/products/droid/)&#60;br /&#62;
[13] Google Nexus One technical spec. (http://en.wikipedia.org/wiki/Nexus_One;http://en.wikipedia.org/wiki/Snapdragon_%28processor%29)&#60;br /&#62;
[14] Samsung S5PC100 technical spec. (http://www.samsung.com/global/business/semiconductor/support/brochures/downloads/systemlsi/s5pc100_brochure_200902.pdf)&#60;br /&#62;
[15] Moto Droid teardown and analysis. (http://www.phonewreck.com/2009/11/12/motorola-droid-teardown-analysis/)&#60;br /&#62;
[16] iPhone 3GS teardown and analysis. (http://www.phonewreck.com/2009/06/19/iphone-3gs-teardown-and-analysis/)&#60;br /&#62;
[17] Package on Package introduction. (http://en.wikipedia.org/wiki/Package_on_package)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-81</link>
<pubDate>Sun, 21 Feb 2010 16:55:49 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">81@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【8】自己动手做XP手机，DIY实战指南&#60;/p&#62;
&#60;p&#62;2010年1月20日，ViewSonic在北京发布了一款真正意义的电脑手机VCP08。根据商家的宣传，VCP08之所以能够被称为真正的电脑手机，是因为“该机做到了把真正的WindowsXP操作系统嵌入进手机当中”[1]。&#60;/p&#62;
&#60;p&#62;Figure 8.1 ViewSonic VCP08's shape and size.&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4045/4309204242_024371d466_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4045/4309204242_024371d466_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;ViewSonic VCP08电脑手机的平面尺寸比普通手机略大，但是厚度则远超普通手机，参见Figure 8.1。超凡的厚度，并不仅仅是因为VCP08手机采用翻盖设计，事实上，VCP08电脑手机，是XP上网本与MTK手机，两个独立运行的系统的简单合并。&#60;/p&#62;
&#60;p&#62;Figure 8.2 ViewSonic VCP08 is a combination of a XP Netbook, plus MTK feature phone.&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4012/4309206228_4f04c3be75_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4012/4309206228_4f04c3be75_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;VCP08 的外屏延用MTK手机系统，是一个自主运行的封闭系统。而内屏则采用Window XP系统，配置Intel Atom Z500双核CPU，CPU速度是800MHz，内存空间512MB，硬盘空间8GB，内屏屏幕为4.3英寸，分辨率高达800x480像素，是不折不扣的上网本[2]。不过，VCP08的电池，只能支持2个小时的电脑操作[1]。&#60;/p&#62;
&#60;p&#62;一言以蔽之，VCP08相当于在XP电脑上绑一个MTK Feature Phone。&#60;/p&#62;
&#60;p&#62;Figure 8.3 Faked picture, a laptop bundled a MTK phone.&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2735/4308553311_a01df766d6_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2735/4308553311_a01df766d6_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;有没有可能自己做个电脑手机，也就是能够打移动电话的电脑呢？Figure 8.3是一个假想图。下面，我们自己动手，做一个电脑手机。&#60;/p&#62;
&#60;p&#62;第一步，先准备4样硬件。&#60;/p&#62;
&#60;p&#62;1. 一台PC，运行Windows XP操作系统。&#60;/p&#62;
&#60;p&#62;2. 一张SIM卡。&#60;/p&#62;
&#60;p&#62;Figure 8.4 SIM Card&#60;br /&#62;
Courtesy &#60;a href=&#34;http://image.tianjimedia.com/imagelist/2009/159/tve53lu1g25x.jpg&#34; rel=&#34;nofollow&#34;&#62;http://image.tianjimedia.com/imagelist/2009/159/tve53lu1g25x.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;3. 带麦克风的耳机。&#60;/p&#62;
&#60;p&#62;4. 一台GSM/GPRS调制解调器（GSM/GPRS，Modem），例如MultiTech的MTCBA-G-F4产品系列，串口的MTCBA-G-F4 或者USB的MTCBA-G-U-F4都可以，价格分别是150美元和230美元[3]。如果嫌MultiTech的Modem价格偏高，也可以选用国内生产的GSM/GPRS Modem，安装和调试步骤可能略有不同，请参阅相关产品说明书。&#60;/p&#62;
&#60;p&#62;Figure 8.5 GSM/GPRS Modem, MultiModem MTCBA-G-F4 [4]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2756/4322381820_658a767031_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2756/4322381820_658a767031_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;第二步，连线安装。&#60;/p&#62;
&#60;p&#62;1. 把SIM卡插入Modem&#60;/p&#62;
&#60;p&#62;Figure 8.6 Insert the SIM card into the modem [4]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4029/4321689651_9e75eb95fb_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4029/4321689651_9e75eb95fb_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;2. 接上天线和电源，然后接入PC机串口或者USB口。如果需要语音电话，可以要求厂家提供一条特殊的电缆，一端接Modem，另一端有两个接头，一个接PC机串口或者USB口，另一个接带麦克风的耳机，用来接收和传送语音。&#60;/p&#62;
&#60;p&#62;Figure 8.7 Connect to power, antenna, and then the PC via RS232 or USB. [4]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4036/4321691631_daaf69f667_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4036/4321691631_daaf69f667_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;3. 在XP操作系统中，点击Start（开始）-&#38;gt; Set（设置）-&#38;gt; Control Panel（控制面板）-&#38;gt; Add Hardware （添加硬件）。&#60;/p&#62;
&#60;p&#62;如果选用的Modem是MultiModem MTCBA-G-F4，随产品附带的CD中，含有相应的驱动程序。&#60;/p&#62;
&#60;p&#62;Figure 8.8 Add modem driver.&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2706/4321693937_b38dbaff05_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2706/4321693937_b38dbaff05_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;第三步，调试及使用。&#60;/p&#62;
&#60;p&#62;如果一切顺利，DIY版电脑手机就可以使用了。&#60;/p&#62;
&#60;p&#62;1. 监测信号强度。&#60;/p&#62;
&#60;p&#62;打开超级终端，即，点击Start（开始）-&#38;gt; All Programs（程序）-&#38;gt; Accessories（附件）-&#38;gt; Communications（通讯）-&#38;gt; HyperTerminal（超级终端）。如果PC操作系统中，没有自带HyperTeminal软件，不妨下载替代品，例如 Teraterm，http://hp.vector.co.jp/authors/VA002416/teraterm.html&#60;/p&#62;
&#60;p&#62;在超级终端（HyperTerminal）中，键入 AT+CSQ&#60;/p&#62;
&#60;p&#62;2. 检查GSM登录及漫游。&#60;/p&#62;
&#60;p&#62;在超级终端（HyperTerminal）中，键入 AT+CREG？&#60;br /&#62;
回应：0，0表示还没登录，无法操作&#60;br /&#62;
回应：0，1表示已登录本地网&#60;br /&#62;
回应：0，5表示已登录一个漫游网&#60;/p&#62;
&#60;p&#62;3. 打语音电话。&#60;/p&#62;
&#60;p&#62;在超级终端（HyperTerminal）中，键入 ATD1234567;&#60;br /&#62;
回应：OK&#60;br /&#62;
请注意不要忘记键入分号，分号代表语音呼叫。&#60;br /&#62;
1234567是随意举例的一个电话号码，如果你拨打的电话号码是7654321，那么这个命令就是ATD7654321;&#60;/p&#62;
&#60;p&#62;4. 挂机。&#60;/p&#62;
&#60;p&#62;在超级终端（HyperTerminal）中，键入 ATH&#60;br /&#62;
回应：OK&#60;/p&#62;
&#60;p&#62;5. 发短信。&#60;/p&#62;
&#60;p&#62;在超级终端（HyperTerminal）中，键入 AT+CMGS=“1234567”发送短信到号码为“1234567”的移动电话。&#60;br /&#62;
等待 “&#38;gt;” 出现。&#60;br /&#62;
然后键入短信正文，按Ctrl-Z结束。&#60;/p&#62;
&#60;p&#62;回应：&#60;br /&#62;
+CMGS: 52&#60;br /&#62;
OK&#60;/p&#62;
&#60;p&#62;6. 收短信，这个稍微复杂一些。&#60;/p&#62;
&#60;p&#62;在超级终端（HyperTerminal）中，键入 AT+CMGF=1 以此设置成文本格式。&#60;br /&#62;
回应：“OK”。&#60;/p&#62;
&#60;p&#62;键入 AT+CSMS=1，以此设置SMS服务为GSM 07.05 Phase 2+兼容。&#60;br /&#62;
回应：&#60;br /&#62;
+CSMS: 1,1,1。各个参数的含义参阅[4]。&#60;/p&#62;
&#60;p&#62;键入 AT+CNMI=2,2,0,0,0 以此设置短信接收模式为直接转发到我们的DIY版电脑手机。&#60;br /&#62;
回应：&#60;br /&#62;
OK&#60;br /&#62;
+CMT: &#34;+17632273726&#34;,,&#34;06/03/17,09:06:11+00&#34; （发送端电话号码及时间）&#60;br /&#62;
TEST SMS 3 (收到的短信内容）&#60;/p&#62;
&#60;p&#62;键入AT+CNMA，通知网络短信已经收到。&#60;br /&#62;
屏幕回应：&#60;br /&#62;
OK&#60;/p&#62;
&#60;p&#62;7. 连接Internet网络。&#60;/p&#62;
&#60;p&#62;通过呼叫PPP，建立Internet连接。详细过程比较复杂，参阅[4]。&#60;/p&#62;
&#60;p&#62;总结一下，制作一部DIY版电脑手机不复杂。如前文所述，电脑手机的关键部件是Modem。不仅可用MultiTech生产的Modem，其实任何一个 GSM/GPRS Modem都能用。甚至，也可以用一部MTK的Feature Phone来替代Modem，只不过安装和调试略微麻烦一点而已。&#60;/p&#62;
&#60;p&#62;我们制作DIY版电脑手机，并不纯粹为了自娱自乐，满足好奇心。通过这个例子，有助于认清一下几个问题。&#60;/p&#62;
&#60;p&#62;1. 移动通信的任务，其实完全可以用一部Modem来完成。&#60;/p&#62;
&#60;p&#62;2. 所谓电脑手机，实质上无非是把普通PC以及操作系统，与Modem相连。PC操作系统，可以通过AT指令，对Modem进行相应控制，包括拨号，通话，收发短信等等。&#60;/p&#62;
&#60;p&#62;3. DIY版电脑手机的操作界面非常不直观。为了改善用户体验，不妨通过开发界面友好的手机应用程序包，实现以下功能。不难想像，开发这样一个应用程序包，虽然有一定难度，但也并非遥不可及。&#60;/p&#62;
&#60;p&#62; - 拨打电话：发起或接受语音电话。&#60;br /&#62;
 - 短信管理：编辑短信，发送短信，接受短信，删除，回复或者转发短信等等。&#60;br /&#62;
 - 通话历史&#60;br /&#62;
 - 电话本&#60;br /&#62;
 - 手机设置&#60;/p&#62;
&#60;p&#62;4. 至于PC上其它应用程序，例如日历，记事本，计算器等等，完全可以忽视Modem的存在，或者仅仅把当它当作是一个能够提供数据连接的网卡。&#60;/p&#62;
&#60;p&#62;为什么需要电脑手机？根本原因在于Feature Phone的功能有限，仅仅限于通话，短信，以及一些预装的多媒体应用。手机生产厂商预装的功能再多，永远无法满足所有用户的，形形色色的功能需求。所以需要一个类似于PC的操作系统，能够支持第三方开发各种通用软件，并且支持用户自主下载并安装非预装的软件。&#60;/p&#62;
&#60;p&#62;那么，我们自己做的电脑手机与WinMobile或Android等等平台的Smart Phone有什么区别？事实上我们的电脑手机与其它Smart Phone并没有本质的区别，或者说其它Smart Phone是更加精致的电脑手机。一印科技制作的xpPhone，就是这样一款更加精致的电脑手机。&#60;/p&#62;
&#60;p&#62;Figure 8.9 xpPhone outlook [5].&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2782/4323520907_edf2e0f14c_o.png&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2782/4323520907_edf2e0f14c_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 8.10 xpPhone applications [6].&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm5.static.flickr.com/4048/4323493367_9c9d2f0fc2_o.png&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm5.static.flickr.com/4048/4323493367_9c9d2f0fc2_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 8.11 xpPhone applications [6].&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4014/4324245812_5ef1aa6e1d_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4014/4324245812_5ef1aa6e1d_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;虽然一印科技的xpPhone外观看起来很炫，用户体验很好。但是从技术角度来讲，结构上与我们的DIY电脑手机同出一辙，一印科技的精力放在了外观的优化，以及应用程序的开发上。&#60;/p&#62;
&#60;p&#62;事实上，虽然Smart Phones款式众多，令人眼花缭乱，但是它们的内部软硬件结构，大多十分相似。从下一章节开始，我们着手解剖Smart Phone。&#60;/p&#62;
&#60;p&#62;Reference，&#60;/p&#62;
&#60;p&#62;[1] XP+MTK双系统手机。(http://tech.163.com/mobile/10/0120/22/5TGLC8MC0011179O.html)&#60;br /&#62;
[2] 优派VCP08电脑手机。(http://it.21cn.com/mobile/ts/2009/11/24/7099464.shtml)&#60;br /&#62;
[3] MultiTech Modem product list. (http://www.multitech.com/en_US/products/families/multimodemgprs/)&#60;br /&#62;
[4] MultiModem GPRS Wireless Modem MTCBA-G-F4 manual. (http://www.multitech.com/en_us/documents/collateral/manuals/s000443b.pdf)&#60;br /&#62;
[5] xpPhone introduction. (http://www.xpphone.com/product/configuration.html)&#60;br /&#62;
[6] xpPhone applications. (http://www.xpphone.com/Product/phone.html)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-80</link>
<pubDate>Sun, 21 Feb 2010 16:55:28 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">80@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【7】 MTK手机软件系统&#60;/p&#62;
&#60;p&#62;MTK feature phone的基本功能是通话和短信，要了解MTK手机软件系统，首先需要简要回顾几个移动网络通讯的基本概念。&#60;/p&#62;
&#60;p&#62;Figure 38. GSM-GPRS Architecture&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2694/4239683146_55f0dd7e11_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2694/4239683146_55f0dd7e11_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;以GSM系统为例，手机以无线方式建立起与基站（BTS）的联系，两者之间通讯接口是Um。基站与基站控制器（BSC）之间的通讯接口是Abis，基站控制器与移动交换中心（MSC）之间的通讯接口是A，参见Figure 38。&#60;/p&#62;
&#60;p&#62;Figure 39. GSM Protocol Layer [1]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2784/4291716841_f48a0e217a_o.gif&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2784/4291716841_f48a0e217a_o.gif&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;所谓接口（Interface），是一组协议的代名词，而这些协议可以分成若干层，层层叠叠，所以接口又被称为协议栈（Protocol Stack）。Figure 39中最左边一列，显示的是手机需要处理的协议栈。从第二列到第四列，分别显示的是基站（BTS），基站控制器（BSC），和移动交换中心（MSC）分别需要处理的协议栈。相邻两列之间的虚线表示通讯接口，接口两侧的协议栈对称，以保证通讯中传递的信息能够被对方识别。&#60;/p&#62;
&#60;p&#62;MTK手机软件系统，需要处理的是最左边的协议栈 [2]。&#60;/p&#62;
&#60;p&#62;1. 该协议栈的底层是物理层（Physical Layer），负责无线射频（GSM RF）和信道管理（Channel Access Method），用来传输原始的比特数据流，例如GSM系统中的TDMA。&#60;/p&#62;
&#60;p&#62;2. 第二层是数据链路层（Data Link Layer），LAPDm是该层使用的协议，负责把数据流分成若干帧，并处理流控制。&#60;/p&#62;
&#60;p&#62;3. 第三层是网络层（Network Layer），负责建立手机通讯发起方与接收方之间的连接。手机的连接离不开基站，基站控制器以及移动交换中心。而且当手机的位置不固定时，譬如在运动中的汽车上打电话，经过的基站，甚至基站控制器都不固定。所以，网络层又细分为三个子层，分别是RR层，MM层，以及CM层。&#60;/p&#62;
&#60;p&#62; 3.1. RR层负责无线资源管理（Radio Resource Management），负责建立手机与基站之间的联系，尤其是当多个手机同时与同一个基站联系时，如何避免多个信道之间的相互干扰。&#60;/p&#62;
&#60;p&#62; 3.2. MM层负责移动的管理（Mobile Management）。运动中的手机由一个基站切换到另一个基站，甚至由一个基站控制中心切换到另一个基站控制中心，切换过程中如何保持通话的连续性，诸如此类的工作由MM层负责。&#60;/p&#62;
&#60;p&#62; 3.3. CM层，又被称为CC层，负责连接和呼叫的管理（Connection Management, or Call Control）。在手机通话发起方拨号是，CM层负责查询接收方当前所在位置，以及是否在通话中，是否需要转入语音留言箱等等。&#60;/p&#62;
&#60;p&#62;简要回顾一下GSM的协议栈，有助于理解MTK的软件系统。GSM协议层只规定了L1到L3三层协议，即物理层，数据链路层和网络层，并没有规定L4以上的协议内容。MTK把L4视作应用层，L4的协议用来让应用程序调用网络层L3中的CM/CC子层功能模块。&#60;/p&#62;
&#60;p&#62;Figure 40. MTK software function modules [3].&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4059/4292450480_69a0012631_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4059/4292450480_69a0012631_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 40显示了MTK软件平台中包含的基本模块，来自MTK工程师的演讲稿[3]。其中各个模块的名称缩写的含义，可参阅附录（Appendix）。虽然该资料来源可靠，但是Figure 40图中存在一些令人疑惑的细节，&#60;/p&#62;
&#60;p&#62;1. 物理层（L1），负责无线射频和信道管理。Figure 40中L1模块，如粗边框图所示。它的左边是驱动器（Drivers）模块，右边是UART串口。这种绘制方式不太准确，其实L1和UART都可以看成是硬件加驱动器的一种。&#60;/p&#62;
&#60;p&#62;MCU（微处理单元）支持多种外设，例如扬声器/USB/远红外串口等等，参阅前文Figure 35。每一个外设，不仅需要硬件，也需要驱动软件。MTK软件平台中包含的驱动软件非常丰富，足以支持所有MCU外设。&#60;/p&#62;
&#60;p&#62;2. 数据链路层（L2）的模块，包含在Data部分，例如L2R。&#60;/p&#62;
&#60;p&#62;按照图中所示，应用层（L4）可以通过CSM模块，直接调用L2模块。这与先前介绍的GSM协议栈是冲突的，按照协议栈的规定，L4只能与L3中 CM/CC子层联系。但是MTK的做法，允许L4越级与L2直接联系。也就是说，[3]隐含的意思是，GSM协议栈只是一个建议，在具体实现中不需要严格遵守。&#60;/p&#62;
&#60;p&#62;3. 网络层L3包含的功能模块很多，可以归纳为RR, MM/GMM，以及CC三个部分，如图中粗边的框图所示。&#60;/p&#62;
&#60;p&#62;按照前文所述，GSM协议栈建议，L3层中RR子层应该只与L2模块联系，而不应该直接调用L1模块。按图中所示，MTK没有严格遵守这个规定。更有意思的是，图中把L2与L3描绘成并列的关系，而且它们之间没有直接联系，这一点也比较费解。&#60;/p&#62;
&#60;p&#62;4. 应用层L4中的CSM模块，既负责与L3层的CM/CC模块联系，也负责与L2层的L2R模块联系，这一点似乎不合常规。&#60;/p&#62;
&#60;p&#62;L4 是连接应用程序与GSM协议栈模块的接口。在feature phone的语汇中，应用程序常常被当成是MMI（Man-Machine-Interface）的同义词，其实细究一下，更准确的说法是，应用程序是 MMI的一部分[4]。根据[3]的文字叙述，尤其是pp19关于L4A和L4C的介绍，以及pp38关于Keypad事件触发机制的介绍，似乎MTK的应用程序，对于其它功能模块的调用，有四种机制，如Figure 41所示。&#60;/p&#62;
&#60;p&#62;Figure 41. MMI Architecture&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4002/4292450478_37b455bd5f_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4002/4292450478_37b455bd5f_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; 4.1. 通过GUI模块控制LCD显示屏。&#60;/p&#62;
&#60;p&#62; 4.2. 通过L4模块，以任务的方式，实现通信及其它附加功能，例如SIM卡控制，语音通信，数据通讯，通话历史记录，电话本，照相机等等功能。&#60;/p&#62;
&#60;p&#62; 4.3. 通过Framework中的API，直接对文件系统进行操作，而无需通过OS。&#60;/p&#62;
&#60;p&#62; 4.4. OS的功能限于多任务的调度，以及内存的管理。&#60;/p&#62;
&#60;p&#62;这四种调用机制中，尤其是第三和第四这两种，与PC以及smartphone的差别非常大。这阻碍了MTK软件平台未来顺畅地发展，这个问题留给后续文章，做进一步讨论。&#60;/p&#62;
&#60;p&#62;Figure 40中没有详述MTK应用模块调用底层模块的四种机制，而只是简练笼统地描述成FMI（Feature Rich MMI）。不妨把Figure 41，视为Figure 40中，FMI模块的局部放大。&#60;/p&#62;
&#60;p&#62;虽然Figure 40存在一些令人疑惑的细节，但是基于它对于MTK各个功能模块的描述，同时参考同一份资料的另一张图[3]，我们不难勾勒出MTK软件系统的结构，参见 Figure 42。这张图略去了Figure 40中一些细节，例如RMI（Remote MMI）。RMI不仅可以支持PC操控手机，而且也为SmartPhone中，AP（Application Processor）与BP（Baseband Processor）的分离打下了基础。这些内容留给后续章节。&#60;/p&#62;
&#60;p&#62;Figure 42. MTK Software Platform. Overview [3].&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4043/4292450482_c18a4b2a90_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4043/4292450482_c18a4b2a90_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;比较Figure 40与Figure 42，Figure 40中OS的位置，应该理解成原理介绍大于实际结构。而Figure 42中描绘的，是系统架构，更符合实际情况。即，OS负责为整个系统，包括各个协议栈模块，以及应用程序，提供多任务的调度，以及内存的管理。&#60;/p&#62;
&#60;p&#62;MTK 使用的OS是Nucleus。Nucleus原为Accelerated Technology公司的产品，开发于1990年代。2002年，被Mentor Graphics公司收购。目前Nucleus源代码完全开放，无产品版税（Royalty Free），开发和调试工具齐全。Nucleus系统是模块化结构，可以随意裁剪，支持几乎所有嵌入式微处理器（MCU），可移植性强，无需 BSP（Board Support Package，版级支持包）开发[5]。&#60;/p&#62;
&#60;p&#62;Nucleus除操作系统内核（Kernel）外，还提供TCP/IP协议包（Nucleus Net），图形软件包（Nucleus Grafix）等等辅助工具，被广泛应用与各式嵌入式系统中，包括手机，网络设备，车载电子设备，通讯设备，医疗仪器等等。&#60;/p&#62;
&#60;p&#62;MTK 选用Nucleus的原因，估计有三条，1. Nucleus质量可靠，2. 开发容易，3. 成本低。而且MTK只用了Nucleus的内核部分，这样的做法降低了MTK软件系统对于Nucleus的依赖性。所谓Nucleus内核，主要是多任务并发的处理机制，以及内存的管理，包括以下几个部分。&#60;/p&#62;
&#60;p&#62;1. 任务的调度，包括优先级（Priority），时间片（Time Slice），和抢占性（Preemptive）控制机制。&#60;/p&#62;
&#60;p&#62;2. 任务间的通信，包括信箱（Mailbox），队列（Queue），和管道（Pipe）通讯机制。&#60;/p&#62;
&#60;p&#62;3. 任务间的同步，包括旗语（Semaphore），事件（Event），和信号（Signal）同步机制。&#60;/p&#62;
&#60;p&#62;4. 内存的管理，包括分区与动态两种方式，即定长的与不定长的内存分配与释放。&#60;/p&#62;
&#60;p&#62;Nucleus 内核，与Linux等等其它内核并无重大区别。MTK在Nucleus与其它系统模块之间，设置了一个适配层（KAL OS Adaptation）。这个适配层的意义，在于把OS内核的具体实现封装起来，方便系统调用（System Call）。另外，MTK并没有用到Nucleus对外设管理的支持，以及Nucleus应用程序图形界面库等等。&#60;/p&#62;
&#60;p&#62;关于MTK系统的硬件与软件，就介绍到这里。理解了MTK的系统，或者更确切地说，针对FeaturePhone的软硬件系统，我们就不难理解SmartPhone的出现，是FeaturePhone的进化产物。而Figure 40中提到的RMI（Remote MMI），可以视为进入SmartPhone新世界的入口，且听下回分解。&#60;/p&#62;
&#60;p&#62;Appendix,&#60;/p&#62;
&#60;p&#62;MTK软件系统中，各个功能模块名称缩写的全称和简介，参阅Figure 40。&#60;/p&#62;
&#60;p&#62;1. RMI: Remote MMI，例如PC可以通过UART口与协议栈进行通讯。&#60;br /&#62;
2. FMI: Feature rich MMI&#60;br /&#62;
3. L4: MMI通过L4与gsm/gprs协议栈进行通讯，包括以下子模块,&#60;br /&#62;
 3.1. ATCI: AT Command Interpreter, 解释来自PC端的命令并命令L4做相应的动作&#60;br /&#62;
 3.2. L4A: L4 adaptation Layer, MMI与L4A通过消息通信&#60;br /&#62;
 3.3. L4C: L4 Control entity, 处理所有的应用程序请求和响应&#60;br /&#62;
 3.4. UEM: User equipments adaptation, 驱动相关的适配层&#60;br /&#62;
 3.5. PHB: Phone book management, 电话簿相关的处理，如分类等&#60;br /&#62;
 3.6. SMU: SIM management Unit, 安全性管理以及STK&#60;br /&#62;
 3.7. CSM: Circuit switching protocol stack management电路交换协议栈管理&#60;br /&#62;
 3.8. RAC: Registration access control&#60;br /&#62;
 3.9. SMSAL: Short message service application layer&#60;br /&#62;
 3.10. TCM: Terminal context management&#60;br /&#62;
4. NVRAM: Nor-volatile RAM, 是MMI到Flash的一个适配层, 保存一些默认设置&#60;br /&#62;
5. SIM: Subscriber identity module. Handle SIM behavior. as ETSI 11.11 description&#60;br /&#62;
6. DATA: 电路交换数据服务，包括以下子模块&#60;br /&#62;
 6.1. FAX: Group 3 Facsimile&#60;br /&#62;
 6.2. TDT: Transparent circuit switching data&#60;br /&#62;
 6.3. L2R: Layer 2 relay protocol for non-transparent circuit switching data&#60;br /&#62;
 6.4. RLP: Radio link protocol for non-transparent circuit switching data&#60;br /&#62;
7. CC: Circuit-switched call control 电路交换呼叫控制&#60;br /&#62;
8. SS: Supplementary service 附加服务&#60;br /&#62;
9. SMS: Short message service 短消息服务&#60;br /&#62;
10. SM: Session management 会话管理&#60;br /&#62;
11. MM/GMM: Mobility management 移动性能管理&#60;br /&#62;
12. SNDCP: Sub-network dependent convergence protocol&#60;br /&#62;
13. LLC: Logical link control 逻辑连接控制&#60;br /&#62;
14. RR: Radio resource management, 包括以下子模块&#60;br /&#62;
 14.1. RRM: Handles cell selection and PLMN selection&#60;br /&#62;
 14.2. RMPC: Handles the procedures in Idle/Dedicated state including the surrounding cell scheme and measurement reporting&#60;br /&#62;
 14.3. LAPDM: Handles the procedure defined in GSM layer 2&#60;br /&#62;
 14.4. RLC: Radio link control protocol&#60;br /&#62;
 14.5. MAC: Medium access control protocol&#60;br /&#62;
 14.6. MPAL: Adaptation layer for RR and L1A&#60;br /&#62;
15. PPP Point to Point protocol layer, 客户端点对点协议&#60;/p&#62;
&#60;p&#62;Reference,&#60;/p&#62;
&#60;p&#62;[1] GSM Protocol Stack. (http://www.tutorialspoint.com/gsm/gsm_protocol_stack.htm)&#60;br /&#62;
[2] GSM Um Interface. (http://en.wikipedia.org/wiki/Um_Interface)&#60;br /&#62;
[3] MTK Software Platform. (http://www.docin.com/p-6004509.html)&#60;br /&#62;
[4] 浅谈GSM手机的MMI软件开发. (http://www.ergocn.com/wenzhai35.htm)&#60;br /&#62;
[5] Introduction to Nucleus OS. (http://www.docin.com/p-7535534.html)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-79</link>
<pubDate>Sun, 21 Feb 2010 16:55:03 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">79@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【6】MTK手机的基带芯片&#60;/p&#62;
&#60;p&#62;MTK的硬件技术的核心，在于它的基带芯片。为了降低成本，同时缩减手机主板的面积，基带芯片中除了CPU以外，还集成了很多外设控制器。Feature Phone的功能，基本上取决于基带芯片所支持的外设功能。&#60;/p&#62;
&#60;p&#62;最早的MT6205方案，只有GSM的基本语音功能，不支持GPRS数据通信、没有WAP、MP3等功能。&#60;/p&#62;
&#60;p&#62;随后MT6218在MT6205基础上，增加了GPRS数据通信、WAP浏览、MP3功能。&#60;/p&#62;
&#60;p&#62;接着MT6219在MT6218基础上，又增加了内置1.3M照相/摄像功能，同时还增加了MP4功能。&#60;/p&#62;
&#60;p&#62;MTK再接再厉，在MT6219基础上进一步优化，开发了MT622x系列产品。例如，MT6226是一款性价比相当高的产品，内置VGA照相/摄相处理，支持 GPRS、WAP、MP3、MP4等。同时，还开发了多款衍生品，例如，MT6226M支持1.3M相机的。MT6227支持2M相机。而MT6228不仅增加了电视输出功能，同时还支持3.0M相机，等等。&#60;/p&#62;
&#60;p&#62;从已经淡出市场的MT6205，MT6217，MT6218，MT6219，到现在仍然在市场销售的MT6223，MT6225，MT6226，MT6227，MT6228，MTK生产的所有Feature Phone的基带芯片，均采用ARM7的内核。&#60;/p&#62;
&#60;p&#62;Figure 34. 以MT6225基带芯片为核心的MTK主板 [30]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2625/4194503831_d5fbf67d28_o.png&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2625/4194503831_d5fbf67d28_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 35. MT6225 Architecture [31,32,33,34]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2735/4210933610_15de4f53c2_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2735/4210933610_15de4f53c2_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;在Figure 34中，整个MTK手机主板的核心，是红线标出的MT6225基带芯片。虽然MT6225芯片的尺寸很小，但是它包含的功能却不少，参见Figure 35。&#60;/p&#62;
&#60;p&#62;以MT6225基带芯片为核心，加上电源管理芯片（PMIC）例如MT6318，还有射频芯片例如MT6139，另外再加上Flash存储芯片，就构成了MTK手机主板的基石。把这些芯片的引脚，连接上天线，LCD显示屏，SIM卡槽，扬声器麦克风等等外围设备，就实现了一个完整的Feature Phone的基本功能。&#60;/p&#62;
&#60;p&#62;MT6225芯片的核心，是ARM7EJ-S微处理器（Micro Controller Unit，MCU）。ARM7EJ-S微处理器的基本任务，是执行最基本的计算机指令（Instruction Set），例如move，add，branch，shift，and，push/pop等等[34]，学过汇编语言的同学应该不陌生。&#60;/p&#62;
&#60;p&#62;Figure 36. ARMv5TEJ CPU Core Block Diagram[34]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2600/4216312750_de8d884003_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2600/4216312750_de8d884003_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;在ARM7EJ-S微处理器内部，又可以细分为多个模块。其中，负责执行机器指令的模块，是ARMv5TEJ CPU内核。&#60;/p&#62;
&#60;p&#62;指令执行的物理实现方式，决定了CPU内核的结构。CPU内核结构的设计，包括如何设置memory和register，如何读入数据以及移出数据，如何处理address，interrupt，exception，等等。ARMv5TEJ CPU内核的物理结构，如Figure 36所示。图中显示了CPU内部各个物理模块，以及各个模块之间相互勾连的组织方式。其中包括数据处理模块，如load/move，算术运算模块，如 add/multiply，以及数位操作模块，如shift/rotate，等等。&#60;/p&#62;
&#60;p&#62;ARMv5TEJ这个CPU内核型号中，v5代表第5号版本的ARM指令集，以及相应的CPU内核物理结构。ARMv5TEJ CPU内核被运用在多款微处理器中，包括ARM7EJ-S和ARM926EJ-S。StrongARM系列微处理器的CPU内核是v4，ARM11系列的CPU大多是v6，而ARM Cortex的CPU则是v7[36,37,38]。&#60;/p&#62;
&#60;p&#62;虽然ARM有不同版本的指令集，但是这些指令的物理意义大同小异，不同之处在于指令数量的多寡，以及指令的语法规则的调整。不管是哪一个版本，ARM的指令集都属于精简指令集RISC系列。 RISC（Reduced Instruction Set Computer）的设计宗旨，是把逻辑复杂的指令，分解为一连串简单的基本指令，而RISC指令集只包含这些基本指令。RISC的好处是，逻辑电路简单，体积小，同时可以通过提高频率的办法，提高CPU运行速度。但是代价是增加了CPU与Memory之间数据交换的负担。&#60;/p&#62;
&#60;p&#62;有些人不同意 RISC的思路，他们认为，单纯提高CPU的频率，并不能提高整个系统的运行效率，理由是Memory的IO速度比CPU慢，拖了整个系统的后腿。所以，为了提高系统的运行效率，应该设法降低CPU与Memory之间的数据交换。从这个思路出发，他们建议增加CPU指令的数量，于是他们发明了复杂指令集 CISC（Complex Instruction Set Computer），并且设计了相应的CPU物理结构[39]，例如Intel的x86 CPU系列。&#60;/p&#62;
&#60;p&#62;来自CISC阵营的批评很有道理。于是，ARM的设计者们在两个方面改进了ARM微处理器的设计，1. 扩展指令集，2. 添加memory管理的模块。&#60;/p&#62;
&#60;p&#62;1. 扩展指令集。&#60;/p&#62;
&#60;p&#62;前文说到，ARMv5TEJ是一款CPU内核的型号名称，其中v5代表第5版本的CPU内核，T代表Thumb指令集，J代表Java bytecode指令集。&#60;/p&#62;
&#60;p&#62;ARM 原有的指令都是32-bit，而Thumb指令只有16-bit。Thumb指令集基本上是原有ARM指令集的一个子集，通过压缩参数数量的办法，降低指令长度。降低指令长度的目的，是变相降低CPU与Memory之间的IO，从而提高运行效率。但是压缩参数数量，等同于弱化了微处理器的灵活性，降低了它的功能。为了解决这个问题，ARM采取了同时支持原有ARM指令集以及Thumb指令集的办法。通过识别指令的类别，对这两个指令集，分别处理。&#60;/p&#62;
&#60;p&#62;除了支持Thumb指令集以外，ARMv5TEJ微处理器还同时支持8-bit的Java bytecode。负责执行Java bytecode指令的，是Jazelle模块。&#60;/p&#62;
&#60;p&#62;至于ARMv5TEJ中那个“E”，意思是该微处理器还支持专为数字信号处理（DSP）设计的特殊指令集。&#60;/p&#62;
&#60;p&#62;2. 添加memory管理的模块。&#60;/p&#62;
&#60;p&#62;前文还说到，ARMv5TEJ CPU内核被运用在多款微处理器中，包括ARM7EJ-S和ARM926EJ-S。这两款微处理器的型号中都带有“-S”后缀，代表可合成（Synthesis），意味着购买此微处理器技术的客户，可以自行对微处理器结构做进一步修改，例如改变频率，扩展指令集等等。例如，前面Figure 35描述了MT6225芯片的内部结构，其中包括嵌入的ARM7EJ-S微处理器部分。&#60;/p&#62;
&#60;p&#62;Figure 37. Comparison of ARM7EJ-S and ARM926EJ-S Architectures [36].&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2547/4215334659_3c87870224_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2547/4215334659_3c87870224_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 37对比了ARM7EJ-S与ARM926EJ-S两款微处理器的逻辑结构。ARM7EJ-S微处理器的逻辑结构，如Figure 37中左侧所示。这款微处理器的结构很简单，以ARMv5TEJ为CPU内核，辅以数据总线接口，用来接收来自外部的控制指令，以及交换数据。另外，还设有与其它芯片协同工作的接口，以及Embedded Trace Macrocell（ETM）接口，用来跟踪和调试CPU内部工作状态。&#60;/p&#62;
&#60;p&#62;Figure 37中右侧图，显示的是ARM926EJ-S微处理器的逻辑结构。对比ARM7EJ-S与ARM926EJ-S，后者复杂很多。但是概括一下，ARM926EJ-S结构的调整，着力于两个方面，1. ARM7遵循的是冯诺依曼结构，而ARM9转变成了Harvard结构，也就是把指令与数据分开处理[45]。2. 增添了核内缓存（Cache），以及与紧致内存（Tightly Coupled Memory，TCM）的接口[46,47]，此外，还增添了MMU(Memory Management Unit)，强化对内存的管理。&#60;/p&#62;
&#60;p&#62;由于ARM7系列微处理器内部没有MMU，所以ARM7系列无法实现虚拟内存。没有虚拟内存的后果是，系统和应用程序运行在同一个空间中。这样一来，就无法限制应用程序的权限，从而有可能让恶意程序钻空子，获取整个操作系统的控制权，然后为所欲为。典型的案例就是死机短信[49]，这条短信利用了短信处理程序中的bug，造成黑屏和抖动，让手机系统失常。&#60;/p&#62;
&#60;p&#62;从ARM的网站上可以查到，MTK直接从ARM购买的生产许可证，仅限于ARM7系列，包括ARM7TDMI，ARM7TDMI-S，ARM7EJ-S[40]。这个局面，一直延续到2007年9月10日才发生改变，当时MTK收购了ADI 旗下SoftFone手机芯片系列。MTK此举的目的，主要是着眼于ADI在3G上的专利，但是MTK同时间接获得了ARM9和ARM9E系列的生产许可证，可谓一箭双雕。&#60;/p&#62;
&#60;p&#62;从此MTK基带芯片产品，有两个系列，嫡系的MT系列与兼并来的SoftFone系列[42]。在MT系列中，编号小于MT6235的各款芯片，内核均为ARM7系列。而SoftFone系列各款芯片中，有的以ARM7系列为内核，也有的以ARM9系列为内核，ARM9 系列中使用最多的，是ARM926EJ-S这一款微处理器[43]。&#60;/p&#62;
&#60;p&#62;回顾历史，MTK通过不断地优化升级自己的芯片，从而确定并扩大自己的市场地位。延续这一做法，是否能够保持MTK的发展势头呢？不一定。MTK的传统领地在于Feature Phone，但是Feature Phone正在迅速地被Smart Phone淘汰。MTK如何跟上Smart Phone浪潮呢？且听下回分解。&#60;/p&#62;
&#60;p&#62;Reference，&#60;/p&#62;
&#60;p&#62;[30] 山寨手机存活的理由。(http://tech.sina.com.cn/mobile/n/2008-06-12/10122253121.shtml)&#60;br /&#62;
[31] MT6225芯片简介。(http://www.study-kit.com/list.asp?ProdId=0203)&#60;br /&#62;
[32] MTK6225内部结构简述。(http://weboch.cn.alibaba.com/athena/offerdetail/sale/weboch-50910-483309568.html)&#60;br /&#62;
[33] AM7EJ-S Introduction. (http://www.arm.com/products/CPUs/ARM7EJSCore.html)&#60;br /&#62;
[34] ARM7EJ-S Technical Reference Manual. (http://infocenter.arm.com/help/topic/com.arm.doc.ddi0214b/index.html)&#60;br /&#62;
[35] ARM926EJ-S Technical Reference Manual. (http://infocenter.arm.com/help/topic/com.arm.doc.ddi0222b/index.html)&#60;br /&#62;
[36] ARM Processor Survey. (http://en.wikipedia.org/wiki/ARM_architecture)&#60;br /&#62;
[37] ARM Processor Selector. (http://www.arm.com/products/CPUs/core_selector.html)&#60;br /&#62;
[38] ARM Core Overview. (http://digital.knu.ac.kr/lecture/%EC%82%BC%EC%84%B1%ED%85%8C%ED%81%AC%EB%85%B8MBA/2_arm_core.pdf)&#60;br /&#62;
[39] RISC vs CISC. (http://www.pic24micro.com/cisc_vs_risc.html)&#60;br /&#62;
[40] ARM Processor Licensees. (http://www.arm.com/products/licensing/licencees.html)&#60;br /&#62;
[41] MTK收购ADI手机芯片产品线。(http://www.esmchina.com/ART_8800078804_1400_2101_3101_4300_b1c7f2ad.HTM)&#60;br /&#62;
[42] MTK Product Lines. (http://www.mediatek.com/en/product/list.php?cata1=1)&#60;br /&#62;
[43] MTK SoftFone Product Line. (http://www.mediatek.com/en/product/list.php?cata3=2)&#60;br /&#62;
[44] MTK常用术语缩写。(http://www.mtkmtk.com/html/download/mtkmmi/2009/0717/4109.html)&#60;br /&#62;
[45] Difference of ARM9 from ARM7. (http://en.wikipedia.org/wiki/ARM9)&#60;br /&#62;
[46] 对ARM紧致内存的理解。(http://hi.bccn.net/space-21499-do-blog-id-15164.html)&#60;br /&#62;
[47] ARM Technical Reference, Tightly Coupled Memory (TCM). (http://infocenter.arm.com/help/topic/com.arm.doc.ddi0338g/Chdhbjjb.html)&#60;br /&#62;
[48] Introduction to MMU. (http://en.wikipedia.org/wiki/Memory_management_unit)&#60;br /&#62;
[49] 让你手机死机黑屏的短信。(http://www.177hy.com/bbs/viewthread.php?tid=69038)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-78</link>
<pubDate>Sun, 21 Feb 2010 16:54:43 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">78@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【5】MTK颠覆手机产业链&#60;/p&#62;
&#60;p&#62;MTK一站式解决方案（Turn-Key）模式出现以前，手机设计开发流程大约可以分成以下6步。&#60;/p&#62;
&#60;p&#62;第1步，Design House从芯片厂商那里拿到参考设计。&#60;/p&#62;
&#60;p&#62;芯片厂商根据自己的市场部门对手机市场的预测，决定未来几年手机需要哪些功能，然后围绕自己的CPU内核，确定手机的参考设计，宗旨是推销自己的芯片。例如 2003年，MTK最早的MT6205基带芯片，内核为ARM7，只有GSM等等基本功能。可能是因为当时MTK认为，GPRS，WAP，MP3等等功能，市场上可能没有需求，所以决定MT6205基带芯片轻装从简，把这些累赘的功能统统裁剪掉。&#60;/p&#62;
&#60;p&#62;等到参考设计的软硬件开发都接近完工了， 芯片厂商的营销人员就挨家挨户地拜访Design Houses，展示新款的参考设计，游说新款方案具有广阔的市场前景。如果Design House同意合作，那么Design House会依据新款的参考设计，设计新款手机的整套方案。然后Design House把新款手机的整套方案，推销给手机制造厂商。制造商一旦决定投产，就会向芯片厂商批量订购芯片，芯片厂商因此获利。&#60;/p&#62;
&#60;p&#62;第2步，确定配件元器件。&#60;/p&#62;
&#60;p&#62;芯片厂商提供给Design House的是参考设计，而Design House提供给制造厂商的是产品级设计。前文说过，所谓产品级设计，包括以下部分，&#60;/p&#62;
&#60;p&#62;1. 主板设计，或者Gerber文件，或者PCB板。&#60;br /&#62;
2. 系统软件。&#60;br /&#62;
3. 需要组装的全部元器件的清单（BOM List）。&#60;br /&#62;
4. 配套的外壳。&#60;/p&#62;
&#60;p&#62;芯片厂商提供参考设计，宗旨是推销芯片，尤其是基带芯片。对于其它外围元器件，则留有余地，让Design House自己去选择。Design House选择外围元器件的标准，除了质量以外，还需要考虑成本，以及供货商是否能按时供货等等因素。Design House确定了这些元器件以后，就可以着手设计主板的布局和连线，决定配件元器件的清单（BOM List），系统软件，和外壳等等。&#60;/p&#62;
&#60;p&#62;芯片厂商提供的参考设计，往往以开发板的形式出现。所谓开发板，也被称为大板，因为尺寸远比手机大得多，有的大板甚至可以媲美报纸的面积。Figure 29显示的是Samsung的S3C44BOX芯片开发板[24]。这个开发板的参考设计，包括使用HY57V641620 8M SDRAM，HY29LV160 2M Flash。假如Design House认为，8M的内存小了，2M的闪存也小了，需要换成更大空间的RAM和Flash。LCD也可以换成比亚迪（BYD）的产品，性能更好，价格却更便宜[25]。在这个开发板上，可以方便地改变连线，测试选用不同的配件元器件的性能和能耗等等。&#60;/p&#62;
&#60;p&#62;Figure 29. Samsung S3C44BOX开发板，内核是ARM7TDMI，一些MTK基带芯片也采用同级别的ARM7EJ-S内核[24]。&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2573/4194503829_e8cc18b36a_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2573/4194503829_e8cc18b36a_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;第3步，开发调试驱动程序。&#60;/p&#62;
&#60;p&#62;在确定配件元器件的时候，要同时开发及调试相应的驱动程序。&#60;/p&#62;
&#60;p&#62;第4步，产品级主板设计。&#60;/p&#62;
&#60;p&#62;确定了微处理芯片以及配件元器件以后，Design House着手把大板改成小板，也就是设计产品级主板。产品级主板设计主要是让主板更紧凑，这包括布局和连线，同时加上紧固件以及绝缘和散热材料，使手机更加坚固耐用。&#60;/p&#62;
&#60;p&#62;Figure 30. iPhone初版双主板 [26]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2752/4197014647_c1e51e976e_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2752/4197014647_c1e51e976e_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 31. iPhone初版无线主板 [26]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2659/4197014655_e506f6e60f_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2659/4197014655_e506f6e60f_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 30显示的是iPhone初版的主板。iPhone有两块主板，左边是AP（Application Processor）主板，操作系统，用户界面以及应用程序都运行在AP主板上。图中黄色部分是覆盖在芯片上的绝缘膜，四周的铝合金边框使手机更坚固。右边是BP（Baseband Processor）主板，负责通讯功能。Figure 31显示的是BP主板的背面，从图中也可以看到很多用于紧固的铝合金边框。这两张图片[26]显示的是初版iPhone的主板，3G版的iPhone主板，可以参考[27]。&#60;/p&#62;
&#60;p&#62;严格说来，在这篇介绍Feature Phone的章节里，用iPhone做例子，是不准确的。因为iPhone是Smart Phone，而不是Feature Phone。但是无论是Feature Phone，还是Smart Phone，从大板到小板的设计过程，却是相似的。&#60;/p&#62;
&#60;p&#62;第5步，进一步调试软硬件，使之达到产品级。&#60;/p&#62;
&#60;p&#62;所谓产品级的最高标准，是稳定，是不出bugs。当然在现实生活中，完全杜绝bugs是不可能的。但是产品有优劣之分，bugs数量的多寡，是衡量产品质量的一个重要指标。&#60;/p&#62;
&#60;p&#62;第6步，Design House设计一些参考外壳，参见Figure 32，然后把从里到外的整套设计演示给制造厂商看。&#60;/p&#62;
&#60;p&#62;Figure 32. Ginwave (经纬) Design House的设计样品 [28]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2503/4197117113_e64c36dfa8_b.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2503/4197117113_e64c36dfa8_b.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;总结一下前面所述，传统的手机设计开发分成6步，这六步均由Design House负责。&#60;/p&#62;
&#60;p&#62;1. 从芯片厂商那里拿到参考设计。&#60;br /&#62;
2. 确定配件元器件。&#60;br /&#62;
3. 开发调试驱动程序。&#60;br /&#62;
4. 设计产品级主板。&#60;br /&#62;
5. 进一步调试软硬件，使之达到产品级。&#60;br /&#62;
6. 设计一些参考外壳，然后把从里到外的整套设计演示给制造厂商看。&#60;/p&#62;
&#60;p&#62;MTK 一站式解决方案（Turn-Key）模式出现以前，手机Design House与制造厂商的合作模式，主要是Open BOM模式。在这个合作模式下，Design House提供主板设计的图纸，以及需要采购的配件元器件清单（BOM List）。手机制造厂商拿到主板设计图纸以后，让芯片厂商按图纸制造主板。同时，手机制造厂商根据BOM&#60;br /&#62;
 List，采购其它所需配件元器件。主板和配件元器件到齐以后，手机制造厂商组织生产以及质量测试。然后把生产出来的手机整机交付营销商销售。&#60;/p&#62;
&#60;p&#62;MTK 的一站式解决方案（Turn-Key），实质上是把芯片厂商与Design House两家的工作，由MTK一家包揽了。MTK提供给手机制造厂商的不是设计图纸，而是提供已经组装了主要元器件的主板实物（PCBA），以及供参考的BOM List。手机制造厂商，只需要根据BOM List，选择采购与主板兼容的LCD，麦克风，扬声器，以及外壳。然后把这些外设以及主板组装起来，贴牌打包，即可上市销售。&#60;/p&#62;
&#60;p&#62;采用Turn-Key模式，手机制造厂商需要采购LCD等等外设，然后组装到主板上。如果手机制造厂商，连这两个步骤也嫌麻烦，MTK甚至可以提供完整的裸机。这种模式，称为整机解决方案（Whole-Set）。采用Whole-Set模式，手机制造厂商只需采购并组装外壳，就可以贴牌打包上市销售了。&#60;/p&#62;
&#60;p&#62;Figure 33. MTK提供的主板，组装了外设以后的裸机，以及装上外壳后的手机 [29]。&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm5.static.flickr.com/4002/4195300972_a1dd764eb8_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm5.static.flickr.com/4002/4195300972_a1dd764eb8_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 34. 裸机主板（PCBA）的正面 [30].&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2625/4194503831_d5fbf67d28_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2625/4194503831_d5fbf67d28_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;总之，MTK模式的出现，颠覆了以往的Open BOM模式，取而代之以Turn-Key模式，甚至Whole-Set模式。在Turn-Key模式下，MTK只提供主板，参见Figure 33中，左边那张照片，以及与主板兼容的可供选择的BOM List。在Whole-Set模式下，MTK不仅提供主板，而且连外设也组装好了，手机制造厂商只需要组装外壳，参见Figure 33中，中间那张照片。中间那张已经组装好了外设的主板的反面，参见Figure 34 [30]。图中可以清晰地看见MTK的芯片，MT6225A。&#60;/p&#62;
&#60;p&#62;MTK模式的出现，打破以往手机制造大厂，垄断手机市场的局面，催生了众多小资本小规模的手机制造厂商。对于消费者来说，MTK Feature Phone的卖点是，价格低廉，外壳新潮，但是缺点是功能雷同。&#60;/p&#62;
&#60;p&#62;MTK模式出现以后，其它Design House并不是无事可做，他们仍然可以在MTK基础上，做一些增值软件开发等等工作，但是这些修修补补的工作，难以重现往日Design House日进斗金的辉煌了。&#60;/p&#62;
&#60;p&#62;对比Figure 34中MTK Feature Phone的主板，与Figure 30中iPhone Smart Phone的主板，一个明显的区别是，前者只有一块主板，而后者分为AP和BP两块主板。MTK在Feature Phone时代的成功，是否能够在Smart Phone时代继续发扬光大？要回答这个问题，首先要深入了解Feature Phone与Smart Phone在硬件及软件方面的区别。&#60;/p&#62;
&#60;p&#62;Reference，&#60;/p&#62;
&#60;p&#62;[23] MTK平台发展及各款芯片的功能。(http://bbs.cniso.org/bbs/thread-64473-1-1.html)&#60;br /&#62;
[24] 增强型Samsung S3C44BOX/ARM7TDMI开发板。(http://www.cediy.com/webHtml/Product/tooles/ARM/ARM7/16420090317111000.html)&#60;br /&#62;
[25] 比亚迪LCD产品介绍。(http://www.bydit.com/docc/products/lcd_p.asp)&#60;br /&#62;
[26] 拆解初版iPhone。(http://hkmsyp.com/forum/thread-10198-1-1.html)&#60;br /&#62;
[27] 拆解3G版iPhone。(http://www.beareyes.com.cn/2/lib/200807/14/20080714332.htm)&#60;br /&#62;
[28] 手机Design House与制造厂商的合作模式。(http://www.ginwave.com/docc/product/product.asp)&#60;br /&#62;
[29] MTK平台手机。(http://wujianspace.spaces.live.com /?_c11_BlogPart_BlogPart=blogview&#38;#38;_c=BlogPart&#38;#38;partqs=cat%3D%25e8%25ae%25a1%25e7%25ae%2597%25e6%259c%25ba%25e4%25b8%258e%2520Internet)&#60;br /&#62;
[30] 山寨手机存活的理由。(http://tech.sina.com.cn/mobile/n/2008-06-12/10122253121.shtml)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-77</link>
<pubDate>Sun, 21 Feb 2010 16:54:23 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">77@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【4】手机产业链与Design House&#60;/p&#62;
&#60;p&#62;前文说到，生产手机以前，制造厂家需要预先得到软硬件的产品级设计方案，然后按照设计方案亦步亦趋地做，就可以制造出手机了。软硬件的产品级设计包括以下内容，&#60;/p&#62;
&#60;p&#62;1. 主板设计，或者Gerber文件，或者PCB板。&#60;br /&#62;
2. 产品级的系统软件。&#60;br /&#62;
3. 需要组装的全部元器件的清单（BOM List）。&#60;br /&#62;
4. 配套的外壳。&#60;/p&#62;
&#60;p&#62;谁负责这些设计呢？答案：大厂有自己的设计部门，例如Motorola，Nokia等等。小厂可以外购设计，不仅芯片厂家能够提供设计服务，而且还可以求助专业的设计公司（Design House）。Design House根据芯片厂家提供的手机参考方案，完成手机的产品级设计然后卖给手机生产厂家。&#60;/p&#62;
&#60;p&#62;照理说，合乎常理的顺序是手机经销公司确定手机功能，然后联系制造厂商定货，制造厂商把设计任务交给Design House，Design House确定需要什么样的芯片后，向芯片厂商定货。即，经销商 -&#38;gt; 制造厂商 -&#38;gt; Design House -&#38;gt; 芯片厂商。但是早期的手机制造产品链不是这个顺序，而是正好反过来。芯片厂商制造芯片，提供手机参考设计，然后向Design House兜售这些芯片和参考设计。Design House把参考设计完善成产品级的设计方案后，推销给制造厂商。制造厂商生产出手机后，通过营销公司向市场推销。即，芯片厂商 -&#38;gt; Design House -&#38;gt; 制造厂商 -&#38;gt; 经销商。&#60;/p&#62;
&#60;p&#62;为什么会造成这种首末倒置的现象？据传，有人问发明汽车的亨利福特，为什么不重视市场调查，福特的回答是这样的，“如果我问大家想要什么？他们会说，他们想要一匹跑得更快的马。（If I'd asked people what they wanted, they would have asked for a better horse.）[17]”。无独有偶，引领新潮的Apple公司的CEO，Steve Jobs，在谈到Apple公司的创新理念时，他说，“Apple公司的设计宗旨很简单，就是做一个Apple员工自己喜欢的产品”。在技术迅速发展的领域，研究引导制造，制造引导市场。&#60;/p&#62;
&#60;p&#62;专业设计公司，Design House，不是一个全新的概念。中国手机的Design House，从曾经昙花一现，到如今惨淡经营，大起大落只有不到短短10年的时间。&#60;/p&#62;
&#60;p&#62;中电集团的CECW (CEC Wireless)，从99年开始与荷兰Philips合作，到2001年卖下Philips R&#38;#38;D设立中电赛龙，成为中国第一家手机Design House[18]。从那以后尤其是2002年，国内Design House一度雨后春笋般成立的，2003年以后引起广泛注意。除中电赛龙外，国内比较有名的Design House有，经纬科技，龙旗，德信。&#60;/p&#62;
&#60;p&#62;微软曾经大力扶持德信，动机或许是企图以此改变微软对台湾的HTC的过渡依赖，也可能是打算控制住Design House，这个手机制造产业链的龙头，进而影响整个产业链。但是不幸的是，德信并没有如愿成长起来。倒是HTC，踏踏实实，一步一个脚印。例如从HTC TouchFlo开始，HTC向Shell方面发力。当时大家都觉得奇怪，WinMobile的Shell已经很不错，作为微软的协作厂商，HTC为什么要搞重复建设呢？当HTC Hero亮丽出场以后，一切都得到了解释。人无远虑，必有近忧，如果德信当年预见到软件的力量，像HTC一样，花大力气积累技术实力，或许时至今日，就不会把自己的陨落归结于产业链升级等等这些外因了。&#60;/p&#62;
&#60;p&#62;2003年度，国内Design House的利润率曾经高达70%。但是好景不长，一年以后，2004年平均利润率下降至35%左右。各个Design House为了扭转败局，改变了以往的商业模式，转而采用对制造厂商更为优惠的方式。以往Design House的商业模式是，一手交钱一手交设计方案，收取开发费。现在的模式是，根据销量提成的模式，与制造厂商分摊手机销量不畅的风险。但是，形势进一步恶化，到了2005年，由于更多的公司掌握了手机设计技术，Design House的平均利润率，进一步下降到23%[19]。Figure 26列举了2006年国内主要手机厂商及IC供应商。&#60;/p&#62;
&#60;p&#62;Figure 26. 2006年中国主要手机厂商及IC供应商 [20]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2621/4183861726_79e05c560e_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2621/4183861726_79e05c560e_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;就在Design House冬天即将来临的时刻，2006年，MTK方案进入市场，并且迅速挤兑了其它Design House的市场份额，使得国内Design House的平均利润率，2006年跌至15%，2007年是5.1%，而2008年可能只剩3%[19]。&#60;/p&#62;
&#60;p&#62;令人疑惑也令人感兴趣的是，眼看着Design House的严冬即将来临，MTK却似乎极具抗寒能力，而且在其它企业面临萎缩的形势下，却异军突起，2006年一举占据了国内手机芯片市场的40%，见Figure 27。他们的独门秘笈是什么？&#60;/p&#62;
&#60;p&#62;Figure 27. 2006年MTK芯片方案占中国市场40%份额[20]。&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm5.static.flickr.com/4045/4183858092_dda7e761ef_o.gif&#34; rel=&#34;nofollow&#34;&#62;http://farm5.static.flickr.com/4045/4183858092_dda7e761ef_o.gif&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;MTK的董事长蔡明介，早年是台湾第二大半导体企业，台联电的打工仔。1995年，台联电调整业务方向，要把蔡明介所在的IC设计部门剥离出去，分炉吃饭。蔡明介就这么被逼上梁山，开始了创业的历程。经过一番波折以后，联发科（MTK）于1997年成立。塞翁失马，焉知非福，不到两年的时间，MTK就赚到了第一桶金。&#60;/p&#62;
&#60;p&#62;联发科起家靠的是CD-ROM芯片。CD-ROM的读盘速度以150KB/秒为基数，当时大多数CD-ROM的数据是4倍和8倍，即4x150KB/s和8x150KB/s。MTK迅速推出20倍机型，顺利确定了市场地位。&#60;/p&#62;
&#60;p&#62;从1999年底开始，蔡明介频频访问美国加州，他注意到Intel的增长率放缓了，只有5%，而高通的增长率却高达26%。他意识到，为手机设计IC，前景看好。主意拿定以后，立刻采取行动，他从Rockwell挖来了手机基带芯片专家徐至强。徐上岗以后，2001年，MTK正式开始无线通信芯片的研发。 2003年底，第一款MTK基带芯片研发成功。&#60;/p&#62;
&#60;p&#62;产品研制出来以后，接下去就是营销。MTK的营销方式称为“Turnkey”，即把手机的关键组成部分，芯片，操作系统，以及一些应用软件，这三者捆绑起来，给手机制造厂商提供“一站式解决方案”。有人戏说，有了MTK以后，只要三个人就可以成立手机公司，一个人接洽MTK，第二个人找代工厂，第三个人做营销。这个说法比较夸张，但是的确也说明了，MTK 大大降低了手机制造的难度。&#60;/p&#62;
&#60;p&#62;另外，山寨手机之所以繁荣，除了MTK以外，还离不开配套元器件生产厂商，例如比亚迪（BYD）。BYD提供外壳，柔性线路板，液晶屏，摄像头，马达，键盘等等几乎手机所有配件。除了做手机配件以外，比亚迪现在还制造汽车。&#60;/p&#62;
&#60;p&#62;MTK的“一站式解决方案（Turnkey）”，很多人耳熟能详。客观上讲，把芯片，OS和基本Apps，三者捆绑起来，这个主意并不是具有突破性的技术创新。为什么其它公司没有做到，偏偏让一个小公司，一个原本在手机芯片领域名不见经传的小公司，大红大紫呢？MTK在技术上做了哪些贡献呢？具体分析，留给下一节。&#60;/p&#62;
&#60;p&#62;Figure 28. MTK董事长蔡明介 [21].&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2653/4184006050_f485c242fc_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2653/4184006050_f485c242fc_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Reference,&#60;/p&#62;
&#60;p&#62;[17] Henry Ford's Quote. (http://en.wikiquote.org/wiki/Talk:Henry_Ford)&#60;br /&#62;
[18] Philips transferred its mobile handset activities to China Electronics Co (CEC). (http://www.online-ma.com/cma/doc.asp?id=23)&#60;br /&#62;
[19] China Mobile Phone Design House Report 2007. (http://www.researchandmarkets.com/reports/554493)&#60;br /&#62;
[20] MTK方案及代表手机大揭秘。 (http://blog.163.com/xiaotu_sh2008/blog/static/683125962008111695849617/)&#60;br /&#62;
[21] 联发科董事长蔡明介。(http://www.esmchina.com）/ART_8800096032_1100_0_0_4200_99d3a820.HTM)&#60;br /&#62;
[22] MTK发家史 (http://telecom.weaseek.com/2008/0624/45326621_2.shtml)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-76</link>
<pubDate>Sun, 21 Feb 2010 16:54:09 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">76@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【3】手机是怎样生产出来的？&#60;/p&#62;
&#60;p&#62;要说清楚MTK在商业模式上有什么优势，以及Android对于MTK未来的手机开发会有什么影响，首先得了解手机从设计，开发到生产的整个过程。&#60;/p&#62;
&#60;p&#62;让我们先来看看手机的生产过程。在生产制造环节，山寨手机和正牌手机的区别其实不大。&#60;/p&#62;
&#60;p&#62;1. 装配主板&#60;/p&#62;
&#60;p&#62;大多数电子设备的制造过程，实际上就是按照设计图纸把各部分部件组合在一起，手机也不例外。手机的主要部件有：1. 硬件主板，目前大部分的手机是单板结构，2. 天线，3. 键盘，4. 显示屏，5. 外壳。其中主板是关键部件。各个手机制造商的技术能力不同，在手机制造产业链中的定位也不同。有实力的厂家会从Gerber文件开始，自己生产PCB板。而不具备PCB生产能力的小厂，可以向其它厂家订购已经生产好的PCB板。Figure 9 是一款MTK出品的PCB板。&#60;/p&#62;
&#60;p&#62;Figure 9. 一款MTK出品的PCB板 [13]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2638/4165315089_04cccc5383_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2638/4165315089_04cccc5383_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;有了PCB板以后，就可以着手印刷和贴片。随着技术发展，老式的过孔型的PCB板已经几乎绝迹，现代PCB板大部分采用表面贴装技术。贴装工序分三步。&#60;/p&#62;
&#60;p&#62;1. 把PCB板送入印刷机，印刷机把焊锡（Solder Paste)通过模板印刷在需要焊接的部位，参见Figure 10。&#60;/p&#62;
&#60;p&#62;2. 把印刷好焊锡的PCB板送入贴片机，贴片机把元器件贴装在PCB板上，Figure 11。小的元器件是装在大盘上，大一些的从塑料管中送进贴片机的，Figure 12。&#60;/p&#62;
&#60;p&#62;3. 把贴好的板子送入回流焊机，经预热，加热后，元器件就焊装在PCB板上了。Figure 13显示的是焊接好的主板。&#60;/p&#62;
&#60;p&#62;Figure 10. 印刷机把焊锡通过模板印刷在PCB板需要焊接的部位 [13]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2642/4166073144_858c9b9df6_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2642/4166073144_858c9b9df6_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 11. 贴片机把元器件贴装在PCB板 [13]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2738/4166074266_048dae75b2_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2738/4166074266_048dae75b2_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 12. 贴片机近景，小的元器件装在大盘上，大一些的从塑料管中送入贴片机 [13]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2661/4169062298_565433bd94_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2661/4169062298_565433bd94_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 13. 焊接好的手机主板 [13]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2660/4166077558_91bc66bf8e_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2660/4166077558_91bc66bf8e_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;制造过程强调质量控制，质量控制体现在多个环节。&#60;/p&#62;
&#60;p&#62;1. 生产线上配备多种自动设备，检测各个工序是否工作正常。Figure 14 显示的是手机生产线上的一个产品质量显示器。&#60;/p&#62;
&#60;p&#62;2. 焊接好的手机主板被送入测试台，测试台给手机主板加电测试，Figure 15。&#60;/p&#62;
&#60;p&#62;3. 如果各项指标合格，就可以进入下一工序，安装系统软件。没通过的就需要手工检验和修复，Figure 16。举个例子，有的IC是正方形的，贴的时候有可能被转了90度。&#60;/p&#62;
&#60;p&#62;Figure 14. 手机生产线上的一个产品质量显示器 [13]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2670/4165330751_b326843496_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2670/4165330751_b326843496_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 15. 测试台给手机主板加电测试 [13]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2562/4165321507_de2b35349f_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2562/4165321507_de2b35349f_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 16. 手工检验和修复 [13]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2572/4166083106_e63709dcb5_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2572/4166083106_e63709dcb5_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;2. 烧录系统软件&#60;/p&#62;
&#60;p&#62;硬件制造结束并检验合格后，下一步是烧录手机系统软件。手机系统软件是以Flash Image的形式，存放在工作站里面。把手机主板，通过串口或者USB口，与工作站相连。然后启动工作站里的安装程序，把系统软件烧到手机主板上的闪存里，Figure 17。一台工作站可以同时烧录几十台手机裸板。&#60;/p&#62;
&#60;p&#62;Figure 17. 手机系统软件安装工作台 [15]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2543/4168191161_f66d9740ce_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2543/4168191161_f66d9740ce_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;3. 装配外围设备&#60;/p&#62;
&#60;p&#62;有一些部件，是无法使用回流焊机这样的自动设备，需要手工处理。Figure 18 显示的是在主板上手工焊接手机话筒。有些零部件不需要焊接，手工装配，或者拧螺丝即可。Figure 19，装配无须焊接和螺丝的手机部件。Figure 20，装外壳。Figure 21，手工贴手机编码串号。&#60;/p&#62;
&#60;p&#62;Figure 18. 手工焊接手机话筒 [14]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2640/4168962000_7b8b2cf9a0_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2640/4168962000_7b8b2cf9a0_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 19. 手工装配无须焊接和螺丝的手机部件 [14]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2544/4168985040_f7f4ddb504_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2544/4168985040_f7f4ddb504_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 20. 手工装配手机外壳 [14]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2517/4168217589_ac6c4594de_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2517/4168217589_ac6c4594de_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 21. 手工贴手机编码串号 [14]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2546/4168228041_ab02af61db_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2546/4168228041_ab02af61db_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;4. 校准和检测&#60;/p&#62;
&#60;p&#62;手机组装结束以后，还需要检测辐射量，发射功率，待机时间等等，另外还有一些部件校准，例如天线。Figure 22 估计是在校准天线。Figure 23 在测试声音。大厂会用更专业的检测仪器，Figure 24.&#60;/p&#62;
&#60;p&#62;Figure 22. 可能是在校准天线 [14]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2606/4168243487_9b4b9841db_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2606/4168243487_9b4b9841db_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 23. 测试声音 [14]&#60;br /&#62;
&#60;a href=&#34;Courtesyhttp://farm3.static.flickr.com/2785/4169007364_43fdd90aee_o.jpg&#34; rel=&#34;nofollow&#34;&#62;Courtesyhttp://farm3.static.flickr.com/2785/4169007364_43fdd90aee_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Figure 24 更专业的检测仪器 [16]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2623/4170586975_4bbbe14b62_o.jpg,&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2623/4170586975_4bbbe14b62_o.jpg,&#60;/a&#62; &#60;a href=&#34;http://farm3.static.flickr.com/2577/4171352084_c49427bdbb_o.jpg,&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2577/4171352084_c49427bdbb_o.jpg,&#60;/a&#62; &#60;a href=&#34;http://farm3.static.flickr.com/2560/4171357448_f740bf3a91_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2560/4171357448_f740bf3a91_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;5. 打包出厂&#60;/p&#62;
&#60;p&#62;前叙工序都完成以后，就可以打包出货了，Figure 25。&#60;/p&#62;
&#60;p&#62;Figure 25. 打包准备出厂的山寨机 [14]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2702/4168249409_348a63a654_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2702/4168249409_348a63a654_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;由此，我们可以明白手机的生产过程和其它所有电子设备的生产几乎相同。能不能生产手机，一方面离不开必要的资金，去购置生产设备和培训员工。另一方面，需要得到软硬件的设计方案。而后者可能更重要。软硬件的设计包括以下内容。&#60;/p&#62;
&#60;p&#62;1. 主板设计，或者Gerber文件，或者PCB板。&#60;/p&#62;
&#60;p&#62;2. 系统软件。&#60;/p&#62;
&#60;p&#62;3. 需要组装的全部元器件的清单（BOM List）。&#60;/p&#62;
&#60;p&#62;4. 配套的外壳。&#60;/p&#62;
&#60;p&#62;1. 2.属于设计，3. 4. 属于采购。一旦得到了软硬件的设计方案，以及BOM List，就可以从市场上采购，备料，然后就可以开始制造了。问题是，谁提供软硬件的设计方案以及BOM List呢？&#60;/p&#62;
&#60;p&#62;Reference,&#60;/p&#62;
&#60;p&#62;[13] 山寨手机制造大揭秘。（http://news.xinhuanet.com/it/2009-02/02/content_10749450.htm）&#60;br /&#62;
[14] 山寨新闻调查。（http://laiba.tianya.cn/laiba/CommMsgs?cmm=34721&#38;#38; tid=2645440990215816570&#38;#38;ref=commmsgs-paging&#38;#38;na=3&#38;#38;nst=501&#38;amp; amp;pno=11&#38;#38;cpno=9&#38;#38; nid=34721-2645440990215816570-2655961375168415098）&#60;br /&#62;
[15] 友利通手机高层领导访谈记实。（http://www.unitone.com.cn/newsshow.asp?id=76）&#60;br /&#62;
[16] Metrico for mobile device performance assessment。（http://www.metricowireless.com/services/index.php）
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-75</link>
<pubDate>Sun, 21 Feb 2010 16:53:51 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">75@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【2】手机OS成为核心&#60;/p&#62;
&#60;p&#62;手机凭借通话和短信这两项基本功能，积累了用户，开拓了市场。但是用户的需求是永无止境的，对于手机制造商来说，紧跟用户需求，拓展手机功能，是机会也是挑战。&#60;/p&#62;
&#60;p&#62;1988年第一款数码相机，在日本上市。数码相机的关键是感光芯片。最初的数据相机，使用的是CCD芯片。1990年代初，美国宇航局的科学家Eric Fossum发明了CMOS感光芯片，体积更小，感光效果更好。如果把CMOS感光芯片集成到手机上去，那么手机就可以兼具照相机和摄像机的功能。&#60;/p&#62;
&#60;p&#62;但是事情没有那么简单，给手机配上镜头以及CMOS感光芯片只是起步，接下去还有其它问题需要解决。1. 微控制器的处理能力需要加强。2. 操作系统需要增添相应的驱动程序，同时改进任务调度的机制。3. 多媒体播放器，在液晶显示屏上（LCD）显示照片，播放视频，同时协调扬声器同步播放视频的声音。4. 不仅可以在手机本地存储并显示照片和视频，还要支持连网，支持用户上传和下载多媒体文件。&#60;/p&#62;
&#60;p&#62;1997年，硅谷工程师Philippe Kahn制成了世界第一台具有摄像功能的手机。与相机手机同时出生的，是他的女儿。Philippe用手机给襁褓中的女儿拍了照片，并转发给2000多名亲友，这是人类历史上，第一次用手机拍摄，并通过移动网络散发的照片[7]。&#60;/p&#62;
&#60;p&#62;从此，多媒体成为手机不可或缺的功能。此外，手机还添加了日历，记事本，计算器，音乐播放器等等功能。以及Java VM，以便运行用J2ME编写的程序。还有WAP，用于访问互联网。&#60;/p&#62;
&#60;p&#62;第二代手机的使命结束了，取而代之的是第三代手机，也就是所谓功能手机（Feature Phone）。如果说，对于第二代手机而言，DSP是核心，操作系统是配角。那么自从Feature Phone以来，操作系统的功能大大强化了，地位也上升了，由配角熬成了主角。&#60;/p&#62;
&#60;p&#62;Feature Phone的OS有多种选择。其中，Symbian长期占据Feature Phone OS市场的半壁江山[8]。曾几何时，Symbian OS叱诧风云，一言九鼎，俨然是手机操作系统领域的霸主。举个例子，从严格意义上来说，Symbian OS是操作系统内核（Kernel）。同一套内核可以支持多种GUI图形界面，当年曾经出现S60，MOAP和UIQ三种GUIs，其中UIQ被索爱（SonyEricsson）热捧。作为手机制造商，索爱是Nokia的竞争对手。坊间传说，Nokia因为恨屋及乌，决定打压UIQ。2008年，Nokia指使Symbian Fundation出面宣布，今后Symbian OS只支持S60一款GUI。被冷落的UIQ别无选择，只好关门大吉[9]。&#60;/p&#62;
&#60;p&#62;Figure 6. Mobile OS marketshare recent history [10]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2568/4153933833_bdd657cde7_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2568/4153933833_bdd657cde7_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;但是近年来，手机操作系统市场急剧动荡。带头造反的是Apple的iPhone OS，第二冲击波来自Google的Android，此外还有Palm的WebOS凑热闹，参见Figure 6。有评论认为，&#60;/p&#62;
&#60;p&#62;1. Symbian老矣，很难逃脱日薄西山的命运。&#60;/p&#62;
&#60;p&#62;2. iPhone特立独行，走精品路线，成为时尚风向标。&#60;/p&#62;
&#60;p&#62;3. Android稳扎稳打，免费开源，走群众路线，将来最有可能成为手机OS的主流，取代Symbian的盟主地位。&#60;/p&#62;
&#60;p&#62;4. WinMobile偏安一隅，虽不大富，却也小康。&#60;/p&#62;
&#60;p&#62;5. WebOS喧嚣一时，如昙花一现。&#60;/p&#62;
&#60;p&#62;6. RIM的未来在于投靠强人门下。假如自立山头，则前途暗淡。不仅自毙，而且有可能殃及热销中的黑莓手机（BlackBerry）。&#60;/p&#62;
&#60;p&#62;Nucleus OS在哪里？这是一个被市场遗忘的角落。&#60;/p&#62;
&#60;p&#62;Figure 7. Nucleus OS Functional Modules [11]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2560/4152533296_eceecd1965_o.gif&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2560/4152533296_eceecd1965_o.gif&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;是什么原因，使Nucleau OS成为昨日黄花？Figure 7 描述了Nucleus内部的各个功能块。Nucleus本身有不可回避的技术限制，比如没有虚拟内存，而且不分Kernel Space和User Space，系统和应用程序运行在同一个空间中。这对于Feature Phone来说，问题还不是很大，但是对于Smart Phone来说就非常致命了。因为如果应用程序不受限制，那么恶意程序就可以钻空子，获取整个操作系统的控制权，为非作歹。典型的案例就是死机短信，恶意操作致使整个操作系统崩溃。&#60;/p&#62;
&#60;p&#62;但是在2000年，MTK借力Nucleus OS，从一家默默无名的IC Design House，发展成为2009年一季度世界第20名芯片销售大户，参见Figure 8。更重要的是，MTK颠覆了传统的手机制造产业链。&#60;/p&#62;
&#60;p&#62;MTK最初靠什么发家？技术上有什么优势？商业模式上有什么优势？且听下回分解。&#60;/p&#62;
&#60;p&#62;Figure 8. Top 20 Semiconductor Sales Leaders, Q1, 2009 [12]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2752/4154795958_eda5f2f9d0_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2752/4154795958_eda5f2f9d0_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Reference,&#60;/p&#62;
&#60;p&#62;[7] Philippe Kahn created the first camera phone in 1997. (http://en.wikipedia.org/wiki/Philippe_Kahn)&#60;br /&#62;
[8] Mobile OS market share.(http://en.wikipedia.org/wiki/Mobile_operating_system)&#60;br /&#62;
[9] UIQ history. (http://en.wikipedia.org/wiki/UIQ, &#60;a href=&#34;http://en.wikipedia.org/wiki/Symbian_Foundation&#34; rel=&#34;nofollow&#34;&#62;http://en.wikipedia.org/wiki/Symbian_Foundation&#60;/a&#62;)&#60;br /&#62;
[10] iPhone and Android in two-horse smartphone OS race. (http://arstechnica.com/apple/news/2009/11/admob-iphone-and-android-in-two-horse-smartphone-os-race.ars)&#60;br /&#62;
[11] Nucleus OS modules. (http://www.mentorg.co.jp/products/embedded_software/nucleus_rtos/mainColumnParagraphs/2/content_files/file/ill-nucleus.gif)&#60;br /&#62;
[12] Chaos reigns in top 20 semiconductor company ranking. (http://www.evertiq.com/news/14176)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "论山寨手机与Android联姻"</title>
<link>http://www.mdong.org/bbs/topic.php?id=63#post-74</link>
<pubDate>Sun, 21 Feb 2010 16:52:47 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">74@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;【1】MTK亮相的历史背景&#60;/p&#62;
&#60;p&#62;如果说1960年代是大型机(Mainframe)的时代，1970年代是小型机(Microcomputer)的时代，那么1980年代无疑是个人电脑(PC)的时代，而1990年代则是互联网的时代。2000年以后呢？或许是移动互联网的时代。&#60;/p&#62;
&#60;p&#62;与电脑的发展历程类似，移动互联网的发展轨迹，看来也同样是以硬件的改进为先导，软件的繁荣紧随其后，带动整个行业的井喷式的爆发性增长。&#60;/p&#62;
&#60;p&#62;Figure 2. 第一代手机，俗称大哥大。&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2711/4149584622_1338223724_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2711/4149584622_1338223724_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;1980年代，手机开始商用。第一代手机俗称大哥大，特点是无线网络通讯信道中传输的是模拟信号。传输模拟信号有两个缺点，一是耗电，二是同一频段能够同时容纳的用户数量少。因为耗电，所以手机必须携带大块的电池，导致体积庞大，形如板砖。街头流氓打架时，常常捡起地上的板砖砸人，如果随身携带着大哥大，情急之时也可以把大哥大当板砖用。&#60;/p&#62;
&#60;p&#62;Figure 3. 以DSP为核心的第二代手机的硬件架构 [4]。&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2751/4146507443_9601fd7d08_o.png&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2751/4146507443_9601fd7d08_o.png&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;为什么传输模拟信号，会有耗电以及频段容量低的缺点？对比一下数字信号就清楚了。如果把语音转换成数字，就可以采取数据压缩的办法，减少传输语音时占用的带宽。同时由于数字信号容易处理，所以在传输数字语音信号时，可以使用复杂的传输协议与控制，以便在同一频段，同时容纳更多用户相互通话。而对于模拟信号，很难使用类似的协议与控制。&#60;/p&#62;
&#60;p&#62;第二代手机的核心，是数字信号处理器，DSP(Digital Signal Processor)。第二代手机的硬件架构，如Figure 3 所示，分为三部分。&#60;/p&#62;
&#60;p&#62;1. 射频芯片组 (Radio Subsystem)。它负责调制-发送，以及接收-解调无线信号。无论是发送还是接收，射频芯片组只处理模拟信号。&#60;/p&#62;
&#60;p&#62;2. 模拟基带芯片组 (Analog Baseband)。这个芯片组中，主要包括两个功能块，射频接口(RF Interface)，以及音频接口(Audio Interface)。&#60;/p&#62;
&#60;p&#62;射频接口负责把从射频芯片组接收来的模拟信号，转换成数字信号，转发给数字信号处理器(DSP)，以及把DSP输出的数字信号，转换成模拟信号，转发给射频芯片组以便发送。&#60;/p&#62;
&#60;p&#62;音频接口负责把从麦克风接收来的模拟信号，转换成数字信号，然后转发给DSP做进一步处理。同时，它也负责把DSP输出的数字信号，转换成模拟信号，然后转发给喇叭以便播放。&#60;/p&#62;
&#60;p&#62;3. 数字基带芯片组 (Digital Baseband)。这个芯片组主要由两部分构成，数字信号处理器(DSP)，以及微控制器(Microcontroller)。&#60;/p&#62;
&#60;p&#62;DSP的主要任务是进行语音处理，例如去除噪音和语音矫正等等。此外DSP还负责，对语音数据流的压缩解压，不同格式之间的编码解码和转换，还有加密解密等等。如果单块DSP芯片的功能不够，还可以借助于其它专用芯片(ASIC)。&#60;/p&#62;
&#60;p&#62;微处理器负责两个任务，1. 处理无线通信协议，2. 运行手机操作系统。&#60;/p&#62;
&#60;p&#62;当一位用户拨号呼叫另一位用户时，首先要建立一个通话通道，连接主叫方与被叫方。双方对话的语音数字信号，在这个通话通道里传输。七号信令系统负责建立这个通话通道[5]。为了保证信息安全，以及提高系统效率，采取了分离控制流与数据流的做法，也就是说，七号信令系统是一套独立的系统，游离于承载语音数字信号的通话通道之外。&#60;/p&#62;
&#60;p&#62;七号信令由一系列协议组成，与有线网络协议的ISO七层模型大致对应，参见Figure 4。微处理器负责处理七号信令的第一层到第三层协议，MTP1，MTP2，MTP3。&#60;/p&#62;
&#60;p&#62;Figure 4. Comparison SS7 Protocol Suite and ISO Protocol Model [6]&#60;br /&#62;
Courtesy &#60;a href=&#34;http://farm3.static.flickr.com/2742/4152165133_959a2cb7a3_o.jpg&#34; rel=&#34;nofollow&#34;&#62;http://farm3.static.flickr.com/2742/4152165133_959a2cb7a3_o.jpg&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;手机操作系统，例如Nucleus RTOS，负责处理如何开机/关机/锁机，屏幕显示，音量控制，响铃与震动等等外围动作。此外，还负责手机各个功能模块的运行调度 (Scheduling)，以及不同进程间的数据交换(IPC)。虽然DSP在手机中的地位非常重要，但是DSP仍然接受手机操作系统的控制。&#60;/p&#62;
&#60;p&#62;微控制器处理的数据，存放在Flash存储器中。&#60;/p&#62;
&#60;p&#62;第二代手机的核心任务是实时通讯，表现为通话与短信两种功能。围绕实时通讯这个核心，操作系统具体协调各部分的工作。与用户的交互手段，依赖于十几个按键，以及一小块单色液晶显示屏。1998年开始销售的Nokia 5165，是第二代手机的一个经典，参见Figure 5。&#60;/p&#62;
&#60;p&#62;Figure 5. 第二代手机，Nokia 5165，1998年&#60;br /&#62;
Courtesy &#60;a href=&#34;http://i1.phonearena.com/showimage.php?m=Phones.Images&#38;#38;f=image&#38;#38;id=7252&#38;#38;v=default&#34; rel=&#34;nofollow&#34;&#62;http://i1.phonearena.com/showimage.php?m=Phones.Images&#38;#38;f=image&#38;#38;id=7252&#38;#38;v=default&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;Reference,&#60;/p&#62;
&#60;p&#62;[4] Trends in Hardware Architecture for Mobile Devices. (http://www.inf.fu-berlin.de/inst/pubs/tr-b-04-17.abstract.html)&#60;br /&#62;
[5] Signaling System 7, SS7. (http://en.wikipedia.org/wiki/Signaling_System_7)&#60;br /&#62;
[6] Comparison SS7 Protocol Suite and ISO Protocol Model. (http://www.kenneyjacob.com/2007/06/05/ss7-backbone-of-mobile-networks/)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Android UI"</title>
<link>http://www.mdong.org/bbs/topic.php?id=62#post-73</link>
<pubDate>Thu, 18 Feb 2010 13:58:03 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">73@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;Android平台下的各种Drawable，这里在SDK的android.graphics.drawable包下面可以看到有各种Drawable类多达十几种，它们到底之间有什么关系和区别呢?   &#60;/p&#62;
&#60;p&#62; 一、AnimationDrawable &#60;/p&#62;
&#60;p&#62; 顾名思义该类主要表示动画的图形类，可以实现逐帧播放的效果，下面代码示例如下&#60;/p&#62;
&#60;p&#62; 1. 定义一个cwj_animation.xml 放到res/drawable 目录下，其中定义的属性duration为延时，单位为毫秒，而oneshot属性表示是否仅播放一次，内容为:&#60;/p&#62;
&#60;p&#62;&#38;lt;animation-list android:id=&#34;selected&#34; android:oneshot=&#34;false&#34;&#38;gt;&#60;br /&#62;
&#38;lt;item android:drawable=&#34;@drawable/cwj0&#34; android:duration=&#34;30&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;item android:drawable=&#34;@drawable/cwj1&#34; android:duration=&#34;30&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;item android:drawable=&#34;@drawable/cwj2&#34; android:duration=&#34;30&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;item android:drawable=&#34;@drawable/cwj3&#34; android:duration=&#34;30&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;item android:drawable=&#34;@drawable/cwj4&#34; android:duration=&#34;30&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;item android:drawable=&#34;@drawable/cwj5&#34; android:duration=&#34;30&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;/animation-list&#38;gt;&#60;/p&#62;
&#60;p&#62; 2.在java中调用也很简单&#60;/p&#62;
&#60;p&#62; ImageView img = (ImageView)findViewById(R.id.cwj_image);  //首先声明一个ImageView对象在xml布局文件中&#60;br /&#62;
 img.setBackgroundResource(R.drawable.cwj_animation);  //我们刚才的animation定义的xml文件&#60;br /&#62;
 AnimationDrawable frameAnimation = (AnimationDrawable) img.getBackground(); //构造AnimationDrawable对象&#60;br /&#62;
 frameAnimation.start() //开始播放动画&#60;/p&#62;
&#60;p&#62; 3. AnimationDrawable类还提供了一些常用的方法如下:&#60;/p&#62;
&#60;p&#62; void stop() 停止&#60;br /&#62;
 void addFrame(Drawable frame, int duration)  添加一帧，类似xml中的布局&#60;br /&#62;
 Drawable  getFrame(int index)  返回某帧的Drawable图形&#60;br /&#62;
 int  getNumberOfFrames()  返回总共动画帧数&#60;br /&#62;
 boolean  isOneShot()  是否仅播放一次&#60;br /&#62;
 boolean  isRunning()  是否正在播放&#60;/p&#62;
&#60;p&#62;二、BitmapDrawable&#60;/p&#62;
&#60;p&#62;在Android平台中对于缩放、变形的Bitmap对象由BitmapDrawable类表示，其构造方法也很简单，由于该类继承于android.graphics.drawable.Drawable，相对Drawable而言提供了更多的有关位图的操作方法，主要的构造方法如下:&#60;/p&#62;
&#60;p&#62; BitmapDrawable()  //直接构造一个空的对象，这样方式不推荐使用，SDK标记为deprecated.未来可能无法使用。&#60;br /&#62;
 BitmapDrawable(Resources res) //从资源中构造&#60;br /&#62;
 BitmapDrawable(Bitmap bitmap) //从Bitmap对象直接构造，但也是不推荐，而是希望用下一种&#60;br /&#62;
 BitmapDrawable(Resources res, Bitmap bitmap)  //从bitmap中创建设置初始的分辨率从res中&#60;br /&#62;
 BitmapDrawable(String filepath)  //从具体文件路径构造，也不推荐使用，而是下一种更好&#60;br /&#62;
 BitmapDrawable(Resources res, String filepath) //同上&#60;br /&#62;
 BitmapDrawable(InputStream is)  //从输入流中构造，同样推荐下面的方法&#60;br /&#62;
 BitmapDrawable(Resources res, InputStream is) //同上&#60;/p&#62;
&#60;p&#62;  在BitmapDrawable类中相对于Drawable类主要新增了以下几种方法，均比较实用:&#60;/p&#62;
&#60;p&#62;final Bitmap  getBitmap()  获取一个Bitmap对象&#60;br /&#62;
int  getOpacity()   //获取透明度&#60;br /&#62;
void  setAntiAlias(boolean aa) //是否抗锯齿&#60;br /&#62;
void  setTargetDensity(Canvas canvas)   //设置目标Canvas密度&#60;br /&#62;
void  setTargetDensity(DisplayMetrics metrics)  &#60;/p&#62;
&#60;p&#62;三、ClipDrawable&#60;/p&#62;
&#60;p&#62;ColorDrawable&#60;br /&#62;
Drawable&#60;br /&#62;
GradientDrawable&#60;br /&#62;
InsetDrawable&#60;br /&#62;
LayerDrawable&#60;br /&#62;
LevelListDrawable&#60;br /&#62;
NinePatchDrawable&#60;br /&#62;
PaintDrawable&#60;br /&#62;
PictureDrawable&#60;br /&#62;
RotateDrawable&#60;br /&#62;
ScaleDrawable&#60;br /&#62;
ShapeDrawable&#60;br /&#62;
StateListDrawable&#60;br /&#62;
TransitionDrawable&#60;/p&#62;
&#60;p&#62; 以上的类型在常见的开发一般较少出现，主要是基类构造使用，Android内部的多个Widget基础控件使用了
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Android UI"</title>
<link>http://www.mdong.org/bbs/topic.php?id=62#post-72</link>
<pubDate>Thu, 18 Feb 2010 13:56:30 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">72@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;一、 android.graphics.Matrix&#60;/p&#62;
&#60;p&#62;  有关图形的变换、缩放等相关操作常用的方法有:&#60;/p&#62;
&#60;p&#62;  void  reset() // 重置一个matrix对象。&#60;br /&#62;
  void  set(Matrix src) //复制一个源矩阵，和本类的构造方法 Matrix(Matrix src)  一样&#60;br /&#62;
  boolean  isIdentity() //返回这个矩阵是否定义(已经有意义)&#60;/p&#62;
&#60;p&#62;  void setRotate(float degrees) //指定一个角度以0,0为坐标进行旋转&#60;/p&#62;
&#60;p&#62;  void  setRotate(float degrees, float px, float py)  //指定一个角度以px,py为坐标进行旋转&#60;/p&#62;
&#60;p&#62;  void  setScale(float sx, float sy)  // 缩放&#60;/p&#62;
&#60;p&#62;  void  setScale(float sx, float sy, float px, float py)  //以坐标px,py进行缩放&#60;/p&#62;
&#60;p&#62;  void setTranslate(float dx, float dy) //平移&#60;/p&#62;
&#60;p&#62; void setSkew (float kx, float ky, float px, float py) //以坐标px,py进行倾斜&#60;/p&#62;
&#60;p&#62; void setSkew (float kx, float ky) //倾斜&#60;/p&#62;
&#60;p&#62;  二、android.graphics.NinePatch&#60;/p&#62;
&#60;p&#62;  NinePatch是Android平台特有的一种非矢量图形自然拉伸处理方法，可以帮助常规的图形在拉伸时不会缩放，实例中Android开发网提示大家对于Toast的显示就是该原理，同时SDK中提供了一个工具名为Draw 9-Patch，有关该工具的使用方法可以参考我们经发布的 Draw 9-Patch使用方法介绍一文。由于该类提供了高质量支持透明的缩放方式，所以图形格式为PNG，文件命名方式为.9.png 的后缀比如android123.9.png。&#60;/p&#62;
&#60;p&#62;  三、android.graphics.Paint&#60;/p&#62;
&#60;p&#62;  Paint类我们可以理解为画笔、画刷的属性定义，本类常用的方法如下:&#60;/p&#62;
&#60;p&#62;  void  reset()  //重置&#60;br /&#62;
  void  setARGB(int a, int r, int g, int b) 或 void  setColor(int color) 均为设置Paint对象的颜色&#60;/p&#62;
&#60;p&#62; void  setAntiAlias(boolean aa)  //是否抗锯齿，需要配合void setFlags (Paint.ANTI_ALIAS_FLAG) 来帮助消除锯齿使其边缘更平滑。&#60;/p&#62;
&#60;p&#62; Shader  setShader(Shader shader) //设置阴影，Shader类是一个矩阵对象，如果为NULL将清除阴影。&#60;br /&#62;
 void  setStyle(Paint.Style style)  //设置样式，一般为 FILL 填充，或者STROKE凹陷效果。&#60;br /&#62;
 void  setTextSize(float textSize)  //设置字体大小&#60;br /&#62;
 void  setTextAlign(Paint.Align align) //文本对齐方式&#60;br /&#62;
 Typeface  setTypeface(Typeface typeface)  //设置字体，通过Typeface可以加载Android内部的字体，一般为宋体对于中文，部分ROM可以自己添加比如雅黑等等&#60;br /&#62;
 void  setUnderlineText(boolean underlineText) //是否设置下划线，需要撇和void setFlags (Paint.UNDERLINE_TEXT_FLAG) 方法。&#60;/p&#62;
&#60;p&#62; 四、android.graphics.Rect&#60;/p&#62;
&#60;p&#62;  Rect我们可以理解为矩形区域，类似的还有Point一个点，Rect类除了表示一个矩形区域位置描述外，android123提示主要可以帮助我们计算图形之间是否碰撞(包含)关系，对于Android游戏开发比较有用，其主要的成员contains包含了三种重载方法，来判断包含关系&#60;/p&#62;
&#60;p&#62; boolean  contains(int left, int top, int right, int bottom)&#60;br /&#62;
 boolean  contains(int x, int y)&#60;br /&#62;
 boolean  contains(Rect r) &#60;/p&#62;
&#60;p&#62; 五、android.graphics.Region&#60;/p&#62;
&#60;p&#62; Region在Android平台中表示一个区域和Rect不同的是，它表示的是一个不规则的样子，可以是椭圆、多边形等等，而Rect仅仅是矩形。同样Region的boolean  contains(int x, int y)  成员可以判断一个点是否在该区域内&#60;/p&#62;
&#60;p&#62; 六、android.graphics.Typeface&#60;/p&#62;
&#60;p&#62;  Typeface类是帮助描述一个字体对象，在TextView中通过使用setTypeface方法来制定一个输出文本的字体，其直接构造调用成员create方法可以直接指定一个字体名称和样式，比如&#60;/p&#62;
&#60;p&#62;  static Typeface  create(Typeface family, int style)&#60;br /&#62;
  static Typeface  create(String familyName, int style) &#60;/p&#62;
&#60;p&#62;  同时使用isBold和isItalic方法可以判断出是否包含粗体或斜体的字型。&#60;/p&#62;
&#60;p&#62;  final boolean  isBold()&#60;br /&#62;
  final boolean  isItalic() &#60;/p&#62;
&#60;p&#62;  该类的创建方法还有从apk的资源或从一个具体的文件路径，其具体方法为&#60;/p&#62;
&#60;p&#62;  static Typeface  createFromAsset(AssetManager mgr, String path)&#60;br /&#62;
  static Typeface  createFromFile(File path)&#60;br /&#62;
  static Typeface  createFromFile(String path)
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Android UI"</title>
<link>http://www.mdong.org/bbs/topic.php?id=62#post-71</link>
<pubDate>Thu, 18 Feb 2010 13:52:49 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">71@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;static Bitmap  createBitmap(Bitmap src)&#60;br /&#62;
 static Bitmap  createBitmap(int[] colors, int width, int height, Bitmap.Config config)&#60;br /&#62;
 static Bitmap  createBitmap(int[] colors, int offset, int stride, int width, int height, Bitmap.Config config)&#60;br /&#62;
 static Bitmap  createBitmap(Bitmap source, int x, int y, int width, int height, Matrix m, boolean filter)&#60;br /&#62;
 static Bitmap  createBitmap(int width, int height, Bitmap.Config config)&#60;br /&#62;
 static Bitmap  createBitmap(Bitmap source, int x, int y, int width, int height)&#60;br /&#62;
 static Bitmap  createScaledBitmap(Bitmap src, int dstWidth, int dstHeight, boolean filter)  //创建一个可以缩放的位图对象&#60;/p&#62;
&#60;p&#62; final int  getHeight()  获取高度&#60;br /&#62;
 final int  getWidth()   获取宽度&#60;br /&#62;
 final boolean  hasAlpha()   是否有透明通道&#60;br /&#62;
 void  setPixel(int x, int y, int color)   设置某像素的颜色&#60;br /&#62;
 int  getPixel(int x, int y)  获取某像素的颜色，android开发网提示这里返回的int型是color的定义&#60;/p&#62;
&#60;p&#62;有关Android平台上表示颜色的方法有很多种，Color提供了常规主要颜色的定义比如Color.BLACK和Color.GREEN等等，我们平时创建时主要使用以下静态方法&#60;/p&#62;
&#60;p&#62;static int argb(int alpha, int red, int green, int blue)  构造一个包含透明对象的颜色&#60;br /&#62;
static int rgb(int red, int green, int blue)  构造一个标准的颜色对象&#60;br /&#62;
static int parseColor(String colorString)  解析一种颜色字符串的值，比如传入Color.BLACK&#60;/p&#62;
&#60;p&#62; 本类返回的均为一个整形类似  绿色为0xff00ff00，红色为0xffff0000。我们将这个DWORD型看做AARRGGBB，AA代表Aphla透明色，后面的就不难理解，每个分成WORD整好为0-255。
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Android是什么"</title>
<link>http://www.mdong.org/bbs/topic.php?id=61#post-70</link>
<pubDate>Thu, 18 Feb 2010 13:41:18 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">70@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;Android是一个针对移动设备的程序集, 其中包括一个操作系统, 一个中间件和一些关键性应用. 本文首先概览了Android SDK提供的工具和APIs, 当您在使用Java语言来开发Android平台的应用时您会用到它们. &#60;/p&#62;
&#60;p&#62;特性&#60;br /&#62;
程序程序框架可重用及可复写组件组成&#60;br /&#62;
针对移动设备优化过的Dalvik虚拟机&#60;br /&#62;
整合浏览器, 该浏览器基于开源的WebKit引擎开发&#60;br /&#62;
提供了优化过得图形系统, 该系统由一个自定义的2D图形库; 一个遵循OpenGL ES 1.0标准(硬件加速)的3D图形库组成&#60;br /&#62;
使用SQLite来实现结构化数据的存储&#60;br /&#62;
媒体方面对一些通用的audio, video, 和图片格式提供支持(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)&#60;br /&#62;
GSM技术(依赖硬件)&#60;br /&#62;
蓝牙, EDGE, 3G和WiFi(依赖硬件)&#60;br /&#62;
Camera, GPS, 指南针, 和加速计 (依赖硬件)&#60;br /&#62;
非常丰富的开发环境, 包括一个设备模拟器, 调适工具, 内存和效率调优工具和一个Eclipse的插件 &#60;/p&#62;
&#60;p&#62;应用程序&#60;br /&#62;
Android会附带一些核心的应用程序, 包括一个email客户端, 短信程序, 日历, 地图, 浏览器, 通讯录等等. 所有的应用程序都是由Java语言完成的. &#60;/p&#62;
&#60;p&#62;应用程序框架&#60;br /&#62;
开发人员可以跟那些核心应用一样, 拥有访问框架APIs的全部权限. 应用的系结构设计简化了各组件之间的重用；任何应用都可以分发自己的组件, 任何应用也可以使用这些分发的组件（应用的使用方法需遵循框架的安全性约束）。这个机制对用户来说同样适用, 他们也可以替换组件.&#60;br /&#62;
隐藏在每个应用后面的是一套服务和系统, 其中包括:&#60;br /&#62;
一套表现丰富,扩展性很强的View, 通过这些View您可以创建包括list, grid, 文本框, 按钮, 甚至一个嵌入浏览器的应用&#60;br /&#62;
Content Providers, 通过它可以在某个应用内访问其他应用的数据(例如通讯录), 或者共享自己的数据&#60;br /&#62;
Resource Manager, 提供对静态资源的访问能力, 例如国际化文本和layout文件&#60;br /&#62;
Notification Manager, 通过该机制, 所有的应用都可以在状态栏显示自己的提醒信息&#60;br /&#62;
Activity Manager, 用于管理应用的生命周期, 并且提供了通用的向后导航功能 &#60;/p&#62;
&#60;p&#62;库&#60;br /&#62;
Android 包含一套C/C++库, 被用于Android 系统中的各种组件中. 这些功能通过Android 应用框架展现给开发人员. 下面列出一些核心库:&#60;br /&#62;
System C library - 实现了BSD-derived 的标准C系统库(libc), 用于嵌入式的基于Linux的设备&#60;br /&#62;
Media Libraries - 基于PacketVideo的 OpenCORE; 该库提供了对许多流行的音频和视频格式的播放回放和录制功能, 同样包括静态图片文件, 包括MPEG4, H.264, MP3, AAC, AMR, JPG, 和 PNG 等&#60;br /&#62;
Surface Manager - 用于管理不同应用对图形显示子系统和2D和3D图形层的访问&#60;br /&#62;
LibWebCore - 一个时尚的web浏览器引擎, 为Android浏览器和内嵌的web view提供实现&#60;br /&#62;
SGL - 隐藏的2D图形引擎&#60;br /&#62;
3D libraries - 基于OpenGL ES 1.0 APIs实现的库; 该库用于3D图形加速或提供高优化的3D软件光栅器&#60;br /&#62;
FreeType - 位图和向量模式的字体绘制&#60;br /&#62;
SQLite - 一个强大的, 轻量的关系型数据库引擎, 用于所有的应用 &#60;/p&#62;
&#60;p&#62;Android 运行时&#60;br /&#62;
Android包含一组核心库, 提供了Java语言核心库内的大部分功能.&#60;br /&#62;
每一个Android应用运行在自己的进程里, 用该应用自己的Dalvik 虚拟机实例. Dalvik 可以让一个设备高效的运行很多个VM. Dalvik 虚拟机执行Dalvik Executable (.dex)格式的文件, 该格式的文件经过优化 占用很小的内存. 该虚拟机是基于存储器的, 运行经过Java语言编译器的类, 这些类通过&#34;dx&#34;工具被转换成.dex格式.&#60;br /&#62;
Dalvik 虚拟机依赖Linux kernel 来实现一些潜在功能, 例如线程和底层内存管理.
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Free mobile coupon creation/distribution service launched for retailers"</title>
<link>http://www.mdong.org/bbs/topic.php?id=60#post-69</link>
<pubDate>Tue, 16 Feb 2010 21:41:03 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">69@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;You can't escape the stats and facts currently being reported about mobile marketing and, in particular, mobile coupons. A U.S.-based firm has announced a &#34;first of its kind&#34; service that allows retailers to easily create and distribute mobile and digital coupons - for free.&#60;br /&#62;
by Helen Leggatt&#60;/p&#62;
&#60;p&#62;Over 20% of American consumers now use online or mobile coupons, that's more than 45 million adults. &#60;/p&#62;
&#60;p&#62;There's plenty of research out there to support the growth of mobile and online coupon use. Even search engines have seen a rise in the number of coupon-related searches. According to Coupons.com, searches on Google for &#34;Printable Coupons&#34; and &#34;Online Printable Coupons&#34; increased 186% and 178%, respectively last year. In addition, Yahoo reported that &#34;Coupons&#34; was top of its list of economy-related queries for 2009.&#60;/p&#62;
&#60;p&#62;And, increasingly, these virtual clippers aren't cutting paper coupons from printed publications - up 140% from 2008 - and most (87%) are interested in receiving mobile coupons on their devices. &#60;/p&#62;
&#60;p&#62;But how do you easily implement a mobile coupon program? Here's one way. MobileCoupons.com has just released a coupon creator that allows retailers and restaurants to easily create and distribute mobile and digital offers - in less than 5 minutes. &#60;/p&#62;
&#60;p&#62;Built-in analytics means that users can react to demand and its flexibility allows for time- or location-limited promotions.&#60;/p&#62;
&#60;p&#62;According to Mobilecoupons.com's recent announcement, &#34;MobileCoupons have social networking built-in and can be shared on Twitter and Facebook with just a click of a button. All offers are also optimized for web search engines, increasing the online visibility of both brands and their coupons.&#34;&#60;/p&#62;
&#60;p&#62;In an age where consumers are surgically attached to their mobile phones, mobile marketing is an opportunity that retailers can't afford to ignore.
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "中国政府在房价上进退两难"</title>
<link>http://www.mdong.org/bbs/topic.php?id=59#post-68</link>
<pubDate>Mon, 15 Feb 2010 00:19:58 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">68@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;从1991年到2008年，中国城市居住性房地产每平方米的平均价格从111美元增加到523美元(合每平方英尺48.59美元)，平均每年增长约9%。在此期间，不断有人警告说，持续的投资和投机活动有可能导致房地产泡沫和泡沫破裂，特别是鉴于政府政策的不确定性，情况更将如此。但决策者在解决这一问题前，他们必须知道什么地方出了错。&#60;/p&#62;
&#60;p&#62;从长远看，中国的经济增长不可避免地将推动价格走高。一处房地产的价值，就是它在未来所能创造租金收入的当前贴现值。由于租金是不可能确切预测的，因此市场只能基于对未来经济增长的假设猜测未来的租金收入。由于工业活动集中在城市进行，因而城市化率是衡量中国劳动生产率水平的一个指标，中国的城市化率目前只有46%左右，因此中国的劳动生产率在未来十年或更长的时间预计将继续增长。&#60;/p&#62;
&#60;p&#62;通货膨胀预期是推动价格走高的另一个因素。因为投资者将房地产视为可以对冲物价上涨的一种投资，所以通货膨胀预期越高，投资者就需花更多的钱购买防范物价上涨的“保险”。但是，如果房地产供应赶不上需求的增长，上述“保险”需求就会推动房地产价格超过通货膨胀趋势所支持的水平。通过将银行存款利率保持在接近于零的水平，决策者们一直在对房地产的过量需求起着推波助澜作用。过去20年中，房地产投资一直是比储蓄更好的一种家庭财产保值出路。如果央行在通货膨胀率上升的情况不能以足够快的速度上调存款利率，形势将出现恶化。&#60;/p&#62;
&#60;p&#62;最后一点，人民币实际和预期中的升值一直在促使海外华人将投资赌注押在中国大陆主要城市的房地产上。他们这样做不仅是因为这些城市的房地产价格呈现上升趋势，而且是因为人民币升值会进一步提高在华房地产投资以美元计算的回报率。2006至2009年期间，房地产相关投资占中国外商直接投资的10%至15%。有人估计，中国大城市高档住宅的约20%为外国人或海外华人所拥有。&#60;/p&#62;
&#60;p&#62;面对上述趋势，要想防止房地产泡沫是困难的。2005年前后当中国政府试图控制房地产泡沫时，它采取措施控制了高端房地产的供给和需求。国务院在2006年五月要求，所有新的住宅开发项目都需将70%的建筑面积用于建造小于90平方米的单元房，以减少豪华单元房的数量。2006年七月，国务院还对外国人和海外华人投资大陆的居住性房地产作出了限制，只允许他们购买一处用于自己居住的住房。但依然强劲的房地产需求继续推动房价走高。减少供应比降低市场需求来得容易。&#60;/p&#62;
&#60;p&#62;增加中低端房地产的供应或许有助于解决问题。高档房地产只集中在深圳、上海和北京等大城市。这些城市有着相对高的人均收入、迅速现代化的城市基础设施，并且是非本地富裕居民和企业的主要集中地。虽然相对于当地普通居民的收入，这些城市豪华房地产的价格偏高，但与香港、东京、伦敦和纽约的同类房地产相比，其价格依然要低30%至50%。中国大城市在高端住宅和商业房地产方面与香港和东京等国际性大都市的价格趋同之势意味着，中国这些城市工资远低于国际大都市水平的本地居民不再能够买得起像样的住宅。&#60;/p&#62;
&#60;p&#62;但没有什么开发商会在未获得大量补贴的情况下热心建造低价住房。因此中国的中央和地方政府先后出台了房贷优惠、行政控制及税收调节、降低廉价房首付比率以及增加对豪华房地产项目的征税等手段，以便把开发商的兴趣从容易产生泡沫的高档房地产项目上转移开。虽然这些政策有时会降低房地产开发的效率、孳生腐败并给未来的房地产价格制造不确定性，不过近来它们已开始起到给房地产市场降温的作用。&#60;/p&#62;
&#60;p&#62;但仅靠这些政策并不足以防止中国房地产市场出现严重泡沫。投资者和投机者仍然把宝押在房地产价格会不断上升上面。他们知道，中央和地方政府谁也不想房地产价格出现崩盘，地方政府约三分之一的收入来自卖地所得，房地产开发被视为中国经济的一个支柱。最近公布的宏观统计数据也显示，未来几年中国的消费者价格涨幅很有可能升至5%之高。此外，鉴于美国联邦储备委员会(Federal Reserve)的零利率政策，中国政府预计会对加息和人民币升值持谨慎态度，以避免吸引投机性资本从海外涌入中国。这意味着，未来几年中国的实际利率有可能为零甚至是负数，而这会进一步加强房地产作为投资品的吸引力。&#60;/p&#62;
&#60;p&#62;中国的决策者们在化解推动国内房地产需求的因素以及解决低利率问题方面不能拖延。对政府来说，一面是强劲国内需求推动的房地产增长，而价格较为低廉的信贷又对此起了推波助澜作用，另一面是如果信贷成本过于低廉则有可能导致房地产和股市泡沫，政府需要在这二者间求得平衡。关键是要上调利率，以阻止国内投机性势力兴风作浪，同时还要管理好资本的跨境流动，以便外资能够远离房地产投机和股市，投在那些更有效率的项目上。&#60;/p&#62;
&#60;p&#62;（编者按：本文作者肖耿是布鲁金斯学会(Brookings Institution)的高级研究员，并担任北京布鲁金斯-清华中心(Brookings-Tsinghua Center)的主任。本文仅代表作者观点。）
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "很老的一篇关于分析为何国外互联网公司斗不过本土互联网公司的文章"</title>
<link>http://www.mdong.org/bbs/topic.php?id=58#post-67</link>
<pubDate>Sun, 14 Feb 2010 21:22:26 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">67@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;当我们的高校教科书还在将eBay、Amazon、Yahoo、Google等作为成功案例宣讲时,当你去书店去买品种少的可怜的从美国翻译过来的互联网书籍时,里面也充斥着这些美国互联网网站如何人性化、如何技术先进等传奇成功经验.但我们在中国看到的现实是恰恰相反的,美国网站在中国的发展乏善可陈, 在中国基本上都是失败的典型,可以说其中国竞争对手的网站的发展是完全抛弃这些美国网站的经验做法才成功的,甚至要和这些美国网站“倒着做”才成功的.&#60;/p&#62;
&#60;p&#62;虽然现在中国的报刊杂志开始质疑这些美国网站在中国发展的普遍的不成功,但究竟是因为什么背后的原因导致这些美国网站发展不成功,这些记者的分析也只是泛泛的、隔靴搔痒的、不到位的.我因为一些互联网聚会和美国网站的推广人员有一些接触,加上自己的观察,觉得美国网站在中国失败的主要是做事观念上的,他们在中国有好的策略、最聪明的人、最多的钱,最好的技术,但不改变做事的观念、方式,以后也还不能在中国产生哪怕是一个成功的网站.&#60;/p&#62;
&#60;p&#62;一、宁可要白领小资的草,也不要普通大众的苗!VS既要白领小资的苗,也要普通大众的草!&#60;/p&#62;
&#60;p&#62;这是美国网站在中国发展的致命伤,这些美国网站的人,至今还没有人领悟到这点;因为操作这些美国网站的人,高层是港台人士,员工都是上海高级写字楼的白领, 他们知道的中国永远只有上海写字楼这块地方,所以他们的一切做法包括产品设计、网站风格、推广目标对象都是以上海写字楼高级白领及500强企业为参照对象,永远不会考虑大众需求与中小企业.&#60;/p&#62;
&#60;p&#62;他们的教养、志趣、眼界,导致他们的内心深处是排斥大众的,那些网吧的小孩、那些全中国成千上万的小城镇的上网人群(注意这2个人群就已经占了中国互联网人群的一半以上),这些美国网站的人是深深的瞧不上的,包括这些人的兴趣所在“超级女生”等,美国网站的高级白领们不仅不喜欢,而且从内心是深深厌恶的.&#60;/p&#62;
&#60;p&#62;他们只知道gmail,不知道163邮箱,只用msn,决不用QQ,以宣示自己的高雅.从内心深处,他们觉得我们的网站宁可倒闭,也不要做一个没有品位的、迎合大众需求的网站.&#60;/p&#62;
&#60;p&#62;要做中国主流的互联网网站,不迎合大众需求注定是失败的.&#60;/p&#62;
&#60;p&#62;二、宁可被人忘 绝不被人恨 VS   宁肯被人恨,不可被人忘  &#60;/p&#62;
&#60;p&#62;前者是美国网站的哲学,后者是以马云、周鸿一的哲学.&#60;/p&#62;
&#60;p&#62;美国网站生怕有一点点的负面消息、而中国网站生怕没有负面消息,被成千上万的人“恨”是互联网推广的至高境界之一.&#60;/p&#62;
&#60;p&#62;美国网站的人拿着比竞争对手中国网站员工高上10倍的工资,他们生怕丢了饭碗,宁可没有什么业绩,最好不要犯什么错误,冒什么风险.他们低调、保守,谨小慎微,每个人都客气礼貌,有教养,但永远没有打仗的心态,结果被那些鲜活的、一针见血的中国竞争对手网站打的落花流水.&#60;/p&#62;
&#60;p&#62;看马云欺负ebay的人,外人都看的难受:马云的淘宝还在离ebay中国还有很大距离时,动用易观国际宣布taobao超过ebay中国成为老大,ebay 中国的公关女总监弱弱的说:我们只重视用户体验云云.马云最近又针对ebay中国欺负说“我用望远镜也看不到对手”.Ebay的人怕犯错,以美国上市公司不能随便说话为接口,怕说错话,活生生的被人欺负、挑衅到底.&#60;/p&#62;
&#60;p&#62;三、持久战思路VS短平快思路&#60;/p&#62;
&#60;p&#62;美国网站总是有一个长远的规划,总是化很多钱进行各种各样的无用的纸上市场调查后,规划几年内如何做,做策略、做预算,做了还不能轻易调整.反正他们一开始有的是钱、有的是高级人才,慢慢做规划、慢慢发展,但网站不比其他行业,人们津津乐道的跨国公司在中国发展做好10年亏损的策略在互联网行业是行不通的,发展不到10年ebay 及yahoo已经承认在中国的彻底失败.与其慢慢来,还不如一开始就放手一搏.&#60;/p&#62;
&#60;p&#62;而竞争对手的中国网站永远急功近利,做网站的思路是“短平快”的,马云做淘宝可以组织敢死队封闭办公,一切以快为目的,强调小步快跑,边犯错边调整.而美国网站一开始做很多完美的规划与预算,美国公司即使批一个垃圾篓如果不在预算内要批一个月都不一定能够批下来,这种变任何东西要经美国总部批准的做事思路注定是要失败的.&#60;/p&#62;
&#60;p&#62;四、手段是有所谓的、目的不是一切VS手段是无所谓的,目的是一切&#60;/p&#62;
&#60;p&#62;据说马云的管理方式就是江湖式,制定一个指标,如今年追求流量、明年追求注册量,无论这个团队采用什么方法、只要能打仗式的大家朝着目标奋斗,完成目标大家就“大块吃肉”与“分赃”,所以团队什么流氓手段都敢使用:什么插件、捆绑、黄赌毒网站推广等.中国式的网站信奉“手段是无所谓的,目的就是一切”,唯一的前提是不犯罪.&#60;/p&#62;
&#60;p&#62;而美国网站考核指标多的很,规矩也多的很,要维持高端品牌“虚”的形象,要维护跨国公司的面子、还要有高尚的职业道德情操等等,在这些前提下才追求几十个很多不同的长期的短期的生意指标.&#60;/p&#62;
&#60;p&#62;五、做用户的救世主VS 顺着用户需求做&#60;/p&#62;
&#60;p&#62;可能美国网站在中国唯一值得借鉴的地方是他们比较重视用户体验,但这个用户体验往往做过了头,替网民想的太多,太人性化反而束缚了自己的发展.中国用户很多时候不需要你对他们太好,也不需要你替他们想的太多,他们自己会选择,而不是你们替他们选择.&#60;/p&#62;
&#60;p&#62;知道美国ICQ退出中国市场、发展失败的致命伤吗,美国人非常注意保护用户隐私,他们在中国推出的即时通讯产品,你用在一台电脑上用ICQ,另外一台电脑再用时不能记忆保留先前的资料,这就这最大程度的保护了用户的隐私,即只能在自己家里一台电脑上使用最安全,结果根本就不合适中国网民使用,他们撤退出中国时也没有搞清是为什么.马化腾作为ICQ在中国合作伙伴公司的技术对口接洽人,偷师学艺即时通讯技术、知道中国网民网吧(美国网站的员工永远不懂网吧是怎么回事)习惯后,仅仅改进了这一点,即不考虑只有高级白领才会在乎的所谓隐私问题,就将ICQ赶出了中国.&#60;/p&#62;
&#60;p&#62;六、叫好不叫座VS 叫座不叫好&#60;/p&#62;
&#60;p&#62;美国式的网站在中国推广永远是叫好不叫座的,他们做市场推广思路惊人的相同:就是请4A公司设计一套优美的平面广告,然后到地铁、候车亭投放,再设计一套符合白领口味的小众的网络广告,化大价钱在3大门户网站投放,化很贵的价钱买google关键字(注意他们是不买baidu的,美国网站的人眼里只有 google及msn的).他们的广告人人叫好,但就是没有人上网站,即使有人上,投入产出成本也太高,基本上是投入1000元才让一个人上网,他们还找自我借口说,虽然没有增长流量,但我们树立了品牌形象,总是拿品牌知名度或美誉度做挡箭牌.&#60;/p&#62;
&#60;p&#62;竞争对手的中国网站永远先追求流量,信奉我只要化一分钱推广就必须带来一个人的标准来推广网站上,不管这个人是谁,先让他来我的网站的再说.真的流量大就是务实的品牌推广,那些空洞的、无用的、虚的品牌形象并不能当饭吃.推广的唯一目的就是带人进来,好不好是产品的事,所以推广都是“四两拨千斤”的.&#60;/p&#62;
&#60;p&#62;七、被动的君子宣传 vs 主动强行拉动&#60;/p&#62;
&#60;p&#62;美国式市场行为总是局限于宣传知名度为主(如户外广告),难以拉动市场.务实的竞争对手的中国网站绝不做仅仅为了树立所谓形象的品牌广告,只做拉动式的炒作式活动宣传,既产生了直接效益,也扩大了知名度,还要强迫人看.&#60;/p&#62;
&#60;p&#62;中国品牌先生龚文祥曾经观察淘宝的广告与易趣的互联网广告,说记得他们都采用产品资料库的展示排列框式广告banner,同样的广告费,前者的广告效果是后者的10倍以上:&#60;/p&#62;
&#60;p&#62;因为ebay易趣的拿出的产品都是ipod,zippo,这些针对高雅人士的产品大众既不懂英文不会看,而且有多少人买的起这些洋玩意?&#60;/p&#62;
&#60;p&#62;而淘宝的广告都是性感内衣呀、印度神水等吸引眼球的东西,而且在黄赌毒网站强行弹出,不看不行.&#60;/p&#62;
&#60;p&#62;美国网站的人也许不是不知道这些,当他们的所受的“海龟”教养过不了自己的心理关:我宁可做投入一个亿带来1千万人浏览的高雅时尚潮流的广告,也决不做投入1千万带来一亿人浏览的“土的掉渣”低俗的广告.&#60;/p&#62;
&#60;p&#62;所以一个美国网站的广告效果是中国网站10分之一的网站,只能以失败为伍.&#60;/p&#62;
&#60;p&#62;八、邮件、msn的沟通方式VS 电话、面对面的沟通方式&#60;/p&#62;
&#60;p&#62;美国网站的人90％的沟通时间与方式是邮件与沟通,而且沾沾自喜于全部用英文沟通,一个电话可以解决的事情,需要10个邮件传来传去才能解决,所以很多时候邮件与msn往往是最无效的沟通方式.&#60;/p&#62;
&#60;p&#62;周鸿一接管yahoo中国时就是这2种沟通文化冲突的很厉害,所有原yahoo的员工对客户和合作伙伴永远采用邮件沟通方式,永远不去和客户见面喝酒,觉得那很低俗,自从辞退了那些只知道邮件沟通的员工后,业务就有了起色.&#60;/p&#62;
&#60;p&#62;美国网站据说如果有20、30中国本土员工开会,但只要有一个老外在,就全体讲英语,虚荣和不务实到极点,他们永远不知道他们做的是中国人的生意,必须采用中国的语言与沟通方式.&#60;/p&#62;
&#60;p&#62;九、冷清美观第一VS 热闹丰富为王&#60;/p&#62;
&#60;p&#62;看一眼一个网站,如果你先不知道他的美国背景也知道是美国人做的网站:清爽、简洁、冷清、高高在上的美丽,好的东西永远藏在网站里面,相信“酒香不怕巷子深”,觉得这样才符合一个跨国公司网站的品位.20％小众小资很喜欢,但80％的大众一来看这么网页冷冰冰的就走了.&#60;/p&#62;
&#60;p&#62;而他们竞争对手的中国网站总是热热闹闹的banner飘来飘去,把好的东西在首页展示推挤很多给人看,而设计的漂漂亮亮不是考虑的重点.&#60;/p&#62;
&#60;p&#62;直到现在原来做yahoo中国的人还瞧不起hao123:那个白痴做的网站丑的惨不忍睹,一大堆链接堆集在一起.&#60;/p&#62;
&#60;p&#62;可就是几年前同样做网址导航yahoo,在中国投入了10个亿,一大堆MBA、海龟、港台精英,被广东初中毕业的一个人建设维护的、推广费用为0的网址导航网站hao123彻底打败,几年前流量与用户数、广告效果均远远落后于hao123.com.&#60;/p&#62;
&#60;p&#62;十、招一样背景的管理的人 VS 招不一样的创业精神的人&#60;/p&#62;
&#60;p&#62;美国网站招聘时过分强调共同的沟通方式、默契的潜规则:那些忙忙碌碌的员工、那些小心翼翼的员工、那些面面俱到的员工、那些英语邮件标点符号永远不错的员工、那些ppt做的无懈可击的彬彬有礼的员工,永远优先的招那些港台人士、海龟员工.他们都是一个模子出来的人,外面的人进入不了他们这个圈子,所以网站的风格、产品看法、推广等大家就是无须争论的高雅一致,也就理所当然的失败.他们招人的过多从管理角度来看、喜欢四平八稳.&#60;/p&#62;
&#60;p&#62;但他们竞争对手的中国网站的招的人有决断力、冒险精神、也有老黄牛式的默默无闻的人等,虽然水平参差不齐,但创业精神、做事非常极端、具有攻击性,反而能够建设出能打败美国网站的中国网站.&#60;/p&#62;
&#60;p&#62;除了以上一些大的美国网站例子,很多小的一点的美国网站在中国发展也是如此,他们在中国每年投入几千万元,其每天上网人数不过1万人左右,而他们竞争对手中国网站每年投入几十万就可以做到.美国网站的人一定要彻底改变自己做事的以上十大错误思路,那么他们在中国的发展将突飞猛进.
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "IFrame Integration"</title>
<link>http://www.mdong.org/bbs/topic.php?id=57#post-66</link>
<pubDate>Sat, 13 Feb 2010 03:59:26 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">66@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;IFrame Integration&#60;br /&#62;
This is the easiest method of integrating Connect Daily. An IFRAME is an inline frame. It acts like a portal on your page that displays information from another URL. &#60;/p&#62;
&#60;p&#62;An IFRAME is an HTML In-Line Frame. It can be used to create a portal within a web page. The content of the inline frame or portal is supplied by a URL to another web page. It is not necessary for the URL to be on the same server. In other words, the IFRAME content can come from an entirely different page or site.&#60;br /&#62;
For the technically minded, the IFRAME acts like a scrollable DIV where you can set a source URL for the content.&#60;br /&#62;
The HTML code for an IFRAME would look something like this:&#60;br /&#62;
&#38;lt;iframe frameborder=&#34;no&#34; scrolling=&#34;no&#34; id=&#34;calendarframe&#34; src=&#34;http://calendar.sample.com/View.html&#34; width=&#34;690&#34; height=&#34;1024&#38;gt;&#38;lt;/iframe&#38;gt;&#60;/p&#62;
&#60;p&#62;In Connect Daily, you can include any of the available calendar views (Month, Day, Week, Year, Planner, List) via IFRAME. Additionally, Connect Daily provides IFrame widgets for inclusion into your web site. Available widgets include:&#60;/p&#62;
&#60;p&#62;■Mini-Calendar with event days in bold. Clicking on a day opens day or list view for that date.&#60;br /&#62;
■Simple List of next N upcoming events. Clicking on the events pops up a window with the event details.&#60;br /&#62;
■Detailed List of next N day's upcoming events. Event title, additional info URL, and long description are displayed.&#60;br /&#62;
The help topics below cover more information on including an entire calendar or using the IFrame widgets.
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "山寨Android手机引爆国内智能手机市场"</title>
<link>http://www.mdong.org/bbs/topic.php?id=56#post-65</link>
<pubDate>Wed, 27 Jan 2010 17:00:51 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">65@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;　作为开放式的谷歌手机操作系统，Android的山寨化已在深圳悄然潜行。&#60;br /&#62;
　　“我们的Android手机已经开始试产，已着手批量上市。”深圳某山寨厂商人士向记者透露，在深圳这个中国最大的“山寨手机之都”，一场围绕智能手机山寨化的产业浪潮早已暗暗酝酿，而Android手机有望成为他们打开这个市场的突破口。&#60;/p&#62;
&#60;p&#62;　　本报记者从多个渠道获悉，在深圳当地目前至少有五家年出货量在百万部级以上的厂商均有Android手机的开发计划，预计将在不久批量上市。&#60;/p&#62;
&#60;p&#62;　　山寨瞄准Android&#60;br /&#62;
　　今年10月20日，多普达宣布在中国大陆推出两款基于Android系统手机。这一度被认为是首家在中国大陆正式量产Android手机的厂商。而在这场与品牌厂商的Android竞跑中，深圳山寨手机厂商表现得毫不逊色，起码在速度上是这样。&#60;br /&#62;
　　早在今年7月，深圳的手机设计公司三际谷歌通信公司就对外宣布，其首个基于Android操作系统的手机已经研发完成。本报记者采访获悉，有别于Android手机普遍采用高通的芯片，三际谷歌的方案是采用三星的手机芯片，其处理器速度更快。&#60;br /&#62;
　　“我们从去年年底就开始布局Android手机研发。”三际谷歌总经理廖继成对记者透露，为了研发Android，公司组建了近30人的研发团队， “核心研发人员有从三星、德信跳槽过来的”。而一个未经证实的消息是，部分从品牌厂商过来的研发人员，曾经有过Android手机的开发经验。&#60;br /&#62;
　　无独有偶，几乎是在同时，深圳的另一家手机设计公司创扬通信也在完成了Android手机的研发。&#60;br /&#62;
　　“创扬通信研发团队超过50人，由几家合作伙伴共同组成。”创扬通信CEO焦学宁告诉记者，创扬通信负责手机硬件以及部分上层应用的开发，怡成通信承担Android操作系统、驱动、系统程序、部分应用软件等软件部分的开发。&#60;br /&#62;
　　记者曾见到的这款创扬的样机，有别于一般的Android手机，还特别增加了PushMail等类似黑莓手机的应用功能。&#60;br /&#62;
　　“我们的Android手机前期主要针对东南亚等海外市场。”焦学宁告诉本报记者，随着国内Android市场的启动，目前已经和一家内地集成商达成合作，进军内地市场。&#60;br /&#62;
　　三际谷歌总经理廖继成则告诉记者，目前其Android手机海内外市场各半。在其内地市场中，乐派通信就是其合作伙伴之一。乐派总经理刘文权表示：“量产后，我们计划月出货量做到2万部。”&#60;br /&#62;
　　节省20－30美元授权费&#60;br /&#62;
　　相比较iPhone和Windows mobile，谷歌开发的手机操作系统Android或许将成为引爆智能手机山寨化的一个突破口。&#60;br /&#62;
　　“相比较其他的智能手机操作系统，Android是一个开放式平台，可以任意嵌入应用软件。”ISuppli中国研究部总监王阳认为，随着3G时代的到来，智能手机将是“应用为王”，因此Android的开放模式，无疑将为智能手机普及化打好基础。&#60;br /&#62;
　　“区别于传统的手机销售，Android的概念已经有了相当的市场号召力。”刘文权告诉记者。而记者从华强北的水货市场获悉，水货Gphone（谷歌手机）售价已经降至2000元以下，而且持续热销。&#60;br /&#62;
　　刘文权告诉记者，从目前跟经销商合作的情况看，渠道支持不成问题，“经销商对其前景颇为乐观”。而几家手机经销商人士对记者坦言，尽管Android市场还处在培育期，但对于利润日趋下滑的传统手机销售来说，“这个市场需要新的刺激”。&#60;br /&#62;
　　此外，相比Windows mobile系统价格不菲的授权费，采用免费的Android系统，其基本成本就少大约20到30美金。“对于利润日趋微薄的山寨厂商，Android无疑更有利于压缩成本。”王阳分析。&#60;br /&#62;
　　记者采访获悉，相比传统山寨机仅10元左右的微利，目前深圳Android手机厂商利润能做到200元左右，这无疑对渠道有着不小的诱惑力。&#60;br /&#62;
　　“市场对智能手机的真实需求有多大将是关键，现在市场缺少一款有拉动的明星机型。”王阳分析。&#60;br /&#62;
　　一个值得关注的现象是，此次多普达在大陆市场首度推出的两款Android手机，均非运营商定制，而是在社会渠道销售。不止于此，有消息称谷歌也将推出非运营商渠道的解锁版Gphone。“品牌厂商推出社会化渠道的产品，有利于Android手机市场的培育，这对于深圳的Android厂商来说是个利好。”刘文权表示。&#60;br /&#62;
　　智能手机突破口？&#60;br /&#62;
　　低廉的价格无疑是山寨手机对抗品牌厂商的利器，在智能手机时代山寨厂商的价格优势能否延续？无疑成为其成败的关键。&#60;br /&#62;
　　创扬通信CEO焦学宁告诉记者，目前其Android手机方案在国内市场终端售价最低可以做到1500元以内。刘文权则表示，乐派Android手机终端售价预计在1500元到2000元之间。&#60;br /&#62;
　　而据记者了解，多普达首次推出的两款Android手机中，一款售价为4980元，另一款售价为3280元。“随着Android手机的规模量产，我们预计明年下半年价格就可以做到千元以下。”刘文权说。&#60;br /&#62;
　　但价格优势能否真正引爆山寨智能手机市场，仍存变数。“智能手机面对的高端市场与传统山寨手机的低端市场有很大差异，价格优势的拉动作用并不明显。”深圳龙图移动通信有限公司总经理毛红江对记者分析，山寨智能手机的市场前景仍待观望。&#60;br /&#62;
　　而据本报记者调查，早在Android手机面世之前，已有多家深圳厂商尝试推出基于盗版Windows mobile系统的智能手机，售价仅在千元左右，但市场反响平平。&#60;br /&#62;
　　iSuppli中国研究部总监王阳认为，目前在内地智能手机市场尚处在培育期。“智能手机市场的成熟还需要一年半到两年的时间，这其中除了终端产品的开发之外，还有待3G网络和相关应用的成熟。”王阳认为，从长远看智能手机将取代现有的功能性手机，在这个产业逻辑下，深圳的山寨智能手机力量不容忽视。&#60;br /&#62;
　　一个不容忽视的信号显示，在今年北京国际通信展上，“山寨手机之父”联发科正式推出基于Windows Mobile系统的智能手机方案。“智能手机将是联发科下一个不容忽视的市场。”联发科中国公司有关人士告诉本报记者。
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Symbian Setup information list"</title>
<link>http://www.mdong.org/bbs/topic.php?id=55#post-64</link>
<pubDate>Wed, 27 Jan 2010 15:05:39 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">64@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;--DisplayName--&#60;br /&#62;
Rgiht Deal Coupons&#60;/p&#62;
&#60;p&#62;--Identifier--&#60;br /&#62;
Right Deal Right Now&#60;/p&#62;
&#60;p&#62;--Version--&#60;br /&#62;
1.000012&#60;/p&#62;
&#60;p&#62;--MainHTML--&#60;br /&#62;
&#34;Real value, when and where you need it&#34;&#60;br /&#62;
Right Deal is the best way for you to save money while you're on the go. Who has time to clip coupons, bring printed magazines, and coupon books when shopping, traveling, or dining out? We've worked with your neighborhood merchants near you and soon around the world to bring you great deals that you'll use where and when you most need it. You'll never be without your coupons again!&#60;/p&#62;
&#60;p&#62;&#34;Great deals are always nearby&#34;&#60;br /&#62;
Redeeming coupons was never easier. Just open Right Deal and you'll see a list of merchants around you. Simply move the slider to see deals up to 20 miles (or 50 kilometers) away from you. Use the map view to see merchants visually nearby. Find the merchant you're looking for and get directions to the merchant's location. Search by map or by category.&#60;/p&#62;
&#60;p&#62;&#34;No more headaches redeeming expired, unusable coupons&#34;&#60;br /&#62;
Once you've found a coupon, rest assured that you'll be able to use it. Our local team has worked with each merchant directly to ensure that you'll be able to use the coupon. You won't get a coupon if it is no longer honored by the merchant. To redeem the coupon, just show it to the merchant and press redeem. Still not sure if you'll be able to use the coupon? Just click to call the merchant ahead of time to make sure. You won't be disappointed.&#60;/p&#62;
&#60;p&#62;&#34;Share the wealth&#34;&#60;br /&#62;
You can share coupons with your friends and rate a coupon to help others know when you've found a good deal. We'll continue to make saving a social experience, so keep checking back with us for new features.&#60;/p&#62;
&#60;p&#62;Features:&#60;br /&#62;
- List of merchants nearby&#60;br /&#62;
- Map view of merchants nearby&#60;br /&#62;
- Category view of merchants&#60;br /&#62;
- List of merchant's coupons&#60;br /&#62;
- Get directions to merchant location&#60;br /&#62;
- Click to call merchant&#60;br /&#62;
- Rate a coupon
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Symbian Setup information list"</title>
<link>http://www.mdong.org/bbs/topic.php?id=55#post-63</link>
<pubDate>Wed, 27 Jan 2010 14:26:06 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">63@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;&#38;lt;?xml version=&#34;1.0&#34; encoding=&#34;UTF-8&#34;?&#38;gt;&#60;br /&#62;
&#38;lt;!DOCTYPE plist PUBLIC &#34;-//Nokia//DTD PLIST 1.0//EN&#34; &#34;http://www.nokia.com/NOKIA_COM_1/DTDs/plist-1.0.dtd&#34;&#38;gt;&#60;br /&#62;
&#38;lt;plist version=&#34;1.0&#34;&#38;gt;&#60;br /&#62;
&#38;lt;dict&#38;gt;&#60;br /&#62;
  &#38;lt;key&#38;gt;DisplayName&#38;lt;/key&#38;gt;&#60;br /&#62;
  &#38;lt;string&#38;gt;MessagingSample&#38;lt;/string&#38;gt;&#60;br /&#62;
  &#38;lt;key&#38;gt;Identifier&#38;lt;/key&#38;gt;&#60;br /&#62;
  &#38;lt;string&#38;gt;com.nokia.widget.sapi.Messaging.sample&#38;lt;/string&#38;gt;&#60;br /&#62;
  &#38;lt;key&#38;gt;Version&#38;lt;/key&#38;gt;&#60;br /&#62;
  &#38;lt;string&#38;gt;1.0&#38;lt;/string&#38;gt;&#60;br /&#62;
  &#38;lt;key&#38;gt;MainHTML&#38;lt;/key&#38;gt;&#60;br /&#62;
  &#38;lt;string&#38;gt;messaging-sample.html&#38;lt;/string&#38;gt;&#60;br /&#62;
&#38;lt;/dict&#38;gt;&#60;br /&#62;
&#38;lt;/plist&#38;gt;
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Symbian UI Elements"</title>
<link>http://www.mdong.org/bbs/topic.php?id=54#post-62</link>
<pubDate>Sun, 24 Jan 2010 23:08:56 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">62@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;1.time out loading超时&#60;/p&#62;
&#60;p&#62;2.options弹出方式
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Symbian UI Elements"</title>
<link>http://www.mdong.org/bbs/topic.php?id=54#post-61</link>
<pubDate>Fri, 22 Jan 2010 15:06:14 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">61@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;1月22日&#60;/p&#62;
&#60;p&#62;1. button style&#60;br /&#62;
2.确认英文写法&#60;br /&#62;
3.状态栏-》logo&#60;br /&#62;
4.&#38;gt;快捷键右&#60;br /&#62;
5.options功能&#60;br /&#62;
6.优惠券跑&#60;/p&#62;
&#60;p&#62;etc:&#60;br /&#62;
! 定位当前位置 store页面&#60;br /&#62;
!获得行车路线 store页面&#60;br /&#62;
n95 横屏&#60;br /&#62;
coupon-code 可cv&#60;br /&#62;
OK键默认可用（比如:storepage默认拨打电话）&#60;br /&#62;
声音
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Symbian UI Elements"</title>
<link>http://www.mdong.org/bbs/topic.php?id=54#post-60</link>
<pubDate>Wed, 20 Jan 2010 16:19:32 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">60@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;1.Splash/Title/Logo/Loading screen&#60;/p&#62;
&#60;p&#62;2.Main views of the application&#60;/p&#62;
&#60;p&#62;3.Main menu and all of its subsidiary menus&#60;/p&#62;
&#60;p&#62;4.Dialogues, errors, notes appearing from main views&#60;/p&#62;
&#60;p&#62;5.Help/Instructions screen(s)&#60;/p&#62;
&#60;p&#62;6.About screen&#60;/p&#62;
&#60;p&#62;----------&#60;br /&#62;
Applications have both primary users and secondary users.&#60;/p&#62;
&#60;p&#62;Several tasks might be related to a single goal.&#60;/p&#62;
&#60;p&#62;environment , need different sounds, match colors. like QQ2008-wm6&#60;/p&#62;
&#60;p&#62;------&#60;br /&#62;
Focus and select&#60;/p&#62;
&#60;p&#62;Do not try to implement third-level submenus&#60;/p&#62;
&#60;p&#62;mobile applications need to respond faster to user actions than what would be acceptable in desktop computers.&#60;/p&#62;
&#60;p&#62; The application running in the device may be important, but an incoming call can be even more important.
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Martin Niemller"</title>
<link>http://www.mdong.org/bbs/topic.php?id=53#post-59</link>
<pubDate>Wed, 20 Jan 2010 15:14:14 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">59@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;&#34;They came first for the Communist,&#60;br /&#62;
　　　　　and I didn't speak up because I wasn't a Communist.&#60;br /&#62;
Then they came for the Jews,&#60;br /&#62;
　　　　　and I didn't speak up because I wasn't a Jew.&#60;br /&#62;
Then they came for the trade unionists,&#60;br /&#62;
　　　　　and I didn't speak up because I wasn't a trade unionist.&#60;br /&#62;
Thee they came for the Catholics,&#60;br /&#62;
　　　　　and I didn't speak up because I was a Protestant.&#60;br /&#62;
Then they came for me,&#60;br /&#62;
　　　　　and by that time no one wa left to speak up.&#34;
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "基于Symbian的UI"</title>
<link>http://www.mdong.org/bbs/topic.php?id=52#post-58</link>
<pubDate>Wed, 20 Jan 2010 14:58:35 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">58@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;根据人机界面的不同，Symbian体系的UI（User Interface 用户界面）平台分为Series60、Series80、Series90、UIQ等。&#60;/p&#62;
&#60;p&#62;为了更强力地支持Symbian平台，Nokia在2001年成立NokiaMobileSoftware新部门，全力发展移动通信相关的软件。为了让手机厂商有更多的选择以投入Symbian手机的开发，Nokia发展出三种不同的用户界面：Series60/80/90。Series60主要是给数字键盘手机用，Series80是为完整键盘所设计，Series90则是为触控笔方式而设计。另外一个重要的平台是由Symbian百分之百转投资的UIQTechnology所开发出来的UIQ。&#60;/p&#62;
&#60;p&#62;Nokia开发的UI平台&#60;/p&#62;
&#60;p&#62;Series 20/30多为低端手机所采用，Series 40多为中端商务手机所使用支持Java的扩展，Series 60/80/90是为采用Symbian系统的中高端智能手机和高端商务手机而设计。&#60;/p&#62;
&#60;p&#62;Series 20 : 84x48 Pixel s/w Display, Nokia OS&#60;/p&#62;
&#60;p&#62;Series 30 : 96x65 Pixel s/w Display, Nokia OS&#60;/p&#62;
&#60;p&#62;Series 40 : 128x128 Pixel , Nokia OS 手机型号如：6230,7210&#60;/p&#62;
&#60;p&#62;Series 60 : 基本定位于单手操纵设备，176X208, 240x320分辨率，五方向键，两个功能键。使用Symbian OS Preal平台。里面的菜单呈九宫格方式排列。支持MIDP JAVA和使用C++编写的.SIS扩展程序包。不失小巧体积的强力手机系列。代表机器有N70/6681/7610/N73，同时这个系统和UI Style也授权给了一些其他手机厂商比如西门子、三星、松下等。&#60;/p&#62;
&#60;p&#62;Series 80 : NOKIA把这个系列的机器叫做Communicator，在型号上只有一个系就是9系。使用的是Symbian OS Crystal平台。它代表了NOKIA最强的技术，每代都是当时NOKIA所有最高级技术的集合体。最大特点就是像个铅笔盒（或者说遥控器……），外部有一个标准的手机操作界面，里面横向打开后有一个640X200的大屏幕，有四个功能键、N个快捷键和一个完整的QWERTY键盘。净重通常都在200克上下，但是功能强大。可以说是最棒的商务用手机了。NOKIA自己的高层基本都用这玩意儿。典型代表有N 9110/9210/9300/9500 （抛掉9000和9210C/9290这些过渡品不说，这个系就只出了这几款）。&#60;/p&#62;
&#60;p&#62;Series 90 : 使用640X320的大屏幕，除了很少的几个功能/方向键以外完全是触摸屏控制。典型代表有N 7710。&#60;/p&#62;
&#60;p&#62;因为Seires 20/30不支持扩充功能，所以没有相应的对外公开的它们UI Style文档，Series 40、Series 60/80/90的UI Style文档以及SDK均可以在Nokia的Developers频道免费下载。&#60;/p&#62;
&#60;p&#62;UIQ开发的UI平台&#60;/p&#62;
&#60;p&#62;Symbian提供了灵活的用户界面（Use interface UI），来适应不同的用户需求。目前基于Symbian的用户界面有很多，主要是Series 60/80/90以及UIQ，这其中从功能上来说UIQ作为强大，同时这也是更加贴近智能手机范畴的系统。这种UI我们都可以理解为Symbian之上的Shell，它对Symbian的界面进行不同的“包装”，同时增加了一些常用的应用程序。&#60;/p&#62;
&#60;p&#62;为了推广和完善UIQ，Symbian成立了UIQ技术公司（UIQ Technolgy），这是一家旨在开发和推广UIQ的公司。从目前来看似乎UIQ并没有诺基亚的Series 60系统来得流行，因为基于UIQ平台的手机产品比较少；但是随着UIQ 3.0的出现这种情况将发生戏剧性的变化，会有更多的厂商选择为产品配置UIQ平台。
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "千千静听外观皮肤制作设计教程"</title>
<link>http://www.mdong.org/bbs/topic.php?id=51#post-57</link>
<pubDate>Sun, 22 Nov 2009 16:53:24 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">57@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;player_skin  [主面板]&#60;br /&#62;
close              [主面板关闭按钮]&#60;br /&#62;
minimize        [主面板托盘(最小化)按钮]&#60;br /&#62;
minimode      [主面板迷你按钮]&#60;br /&#62;
lyric                [主面板歌词秀按钮]&#60;br /&#62;
playlist          [主面板列表按钮]&#60;br /&#62;
equalizer      [主面板EQ(均衡器)按钮]&#60;br /&#62;
mute              [主面板静音按钮]&#60;br /&#62;
next              [主面板跳过按钮]&#60;br /&#62;
stop              [主面板停止按钮]&#60;br /&#62;
open            [主面板打开(文件)按钮]&#60;br /&#62;
pause          [主面板暂停按钮]&#60;br /&#62;
play              [主面板播放按钮]&#60;br /&#62;
prev.bmp      [主面板返回按钮]&#60;br /&#62;
number          [主面板数显]&#60;br /&#62;
progress_fill  [主面板进度栏]&#60;br /&#62;
progress_thumb  [主面板进度栏]&#60;/p&#62;
&#60;p&#62;playlist_skin.bmp    [列表面板]&#60;br /&#62;
playlist_title.bmp    [列表面板标题栏]&#60;br /&#62;
playlist_toolbar.bmp  [列表面板工具栏]&#60;/p&#62;
&#60;p&#62;scrollbar_bar      [滚动条背景]&#60;br /&#62;
scrollbar_button  [滚动条滑动块]&#60;br /&#62;
scrollbar_thumb    [滚动条上下按钮]&#60;/p&#62;
&#60;p&#62;lyric_skin        [歌词面板]&#60;br /&#62;
ontop      [歌词面板(置第一层)按钮]&#60;br /&#62;
lyric_title        [歌词面板标题栏]&#60;/p&#62;
&#60;p&#62;equalizer_skin  [均衡器面板]&#60;br /&#62;
eq_enabled      [均衡器面板开关按钮]&#60;br /&#62;
eq_factor        [均衡器面板调音推子]&#60;br /&#62;
eq_profile      [均衡器面板配置按钮]&#60;br /&#62;
eq_reset        [均衡器面板复位按钮]&#60;/p&#62;
&#60;p&#62;tt.ico            [TT图标](可无)&#60;br /&#62;
thumb            [**滑块] (比如:音量调节滑块)&#60;br /&#62;
volume_fill      [填充]  (可无)&#60;br /&#62;
eq_fill.bmp      [填充]  (可无)&#60;/p&#62;
&#60;p&#62;mini_skin          [迷你面板]&#60;br /&#62;
mini_lyric        [迷你面板歌词秀按钮]&#60;br /&#62;
mini_minimize      [迷你面板最小化按钮]&#60;br /&#62;
mini_normal        [迷你面板还原按钮]&#60;br /&#62;
mini_a            [迷你面板进度栏1]&#60;br /&#62;
mini_b            [迷你面板进度栏2]&#60;br /&#62;
mini_close        [迷你面板关闭按钮]&#60;br /&#62;
mini_mute          [迷你面板静音按钮]&#60;br /&#62;
mini_next          [迷你面板跳过按钮]&#60;br /&#62;
mini_open          [迷你面板打开(文件)按钮]&#60;br /&#62;
mini_pause        [迷你面板暂停按钮]&#60;br /&#62;
mini_play          [迷你面板播放奶牛]&#60;br /&#62;
mini_prev          [迷你面板返回(上一曲)按钮]&#60;br /&#62;
mini_stop          [迷你面板停止按你]&#60;/p&#62;
&#60;p&#62;*频谱颜色-顶端* SpectrumTopColor=&#34;#808080&#34;&#60;br /&#62;
*频谱颜色-底端* SpectrumBtmColor=&#34;#3e3e3e&#34;&#60;br /&#62;
*频谱颜色-中端* SpectrumMidColor=&#34;#575757&#34;&#60;br /&#62;
*频谱颜色-高峰* SpectrumPeakColor=&#34;#808080&#34;&#60;br /&#62;
*频谱宽度*  SpectrumWide=&#34;1&#34;&#60;br /&#62;
*波形反映速度*  BlurSpeed=&#34;5&#34;&#60;br /&#62;
*波形清晰度*        Blur=&#34;1&#34;&#60;br /&#62;
*波形颜色*      BlurScopeColor=&#34;#465e60&#34;
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "千千静听外观皮肤制作设计教程"</title>
<link>http://www.mdong.org/bbs/topic.php?id=51#post-56</link>
<pubDate>Thu, 19 Nov 2009 15:15:16 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">56@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;2008年12月25日更新：增加在线歌曲的缓冲进度条皮肤元素。命名：progress_fill2.bmp&#60;/p&#62;
&#60;p&#62;一、了解千千静听皮肤制作是怎么一回事？&#60;br /&#62;
1、如果您是位从未接触过皮肤制作的人，那么请先仔细看下面的这段话：&#60;br /&#62;
如何把设计好的皮肤效果图应用到千千静听软件上去，有两个主导思想您应该了解：一个是需要把效果图上面的控件（或称按钮）单独切出来，另一个是需要把上一点说的控件（或称按钮）的坐标找到，为它精准定位，是不是听的有点眉目了，那么我们接着往下讲。&#60;/p&#62;
&#60;p&#62;2、千千的皮肤位于安装目录下的Skin文件夹内，扩展名可以为.skn或.zip，实际上二者是一样的。对于前者，可以先将.skn的扩展名改为.zip(要在系统中显示文件的扩展名，依次点击&#34;工具&#34;－&#34;文件夹选项&#34;－&#34;查看&#34;，再把&#34;隐藏已知文件类型的扩展名&#34;前的小勾去除即可)，然后将其解压到单独的文件夹，进入该文件夹，可以发现里面包含了许多bmp格式的图片和若干个xml文件，他这些文件便是皮肤的组成部分了，bmp图片是各个窗口的背景及按钮图片，Skin.xml则是配置文件，定义了皮肤的基本信息、窗口及按钮的位置、大小等，它是基于XML格式的文件，可直接用系统自带的记事本或者其它文本编辑工具打开的。&#60;/p&#62;
&#60;p&#62;好，了解以上的基础知识后，我们就开始学习实际的制作过程。&#60;/p&#62;
&#60;p&#62;二、开始制作啦！&#60;br /&#62;
 按照四个步骤进行：（A）切图（B）修改配置文件（C）打包成皮肤文件（D）应用皮肤&#60;/p&#62;
&#60;p&#62;（A）切图：&#60;br /&#62;
用PS或FW打开设计效果图，整体观察一下，下面讲一下哪些图片是要单独切出来的以及图片的命名。&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image003.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62; 一、主窗口的控件&#60;br /&#62;
（1）主窗口背景   命名：player_skin.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image005.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;重点：边缘小圆角的镂空处理，把镂空填充成（#ff00ff）这个颜色，要细心处理这部分哦，边缘要1像素1像素的填充（如上图，镂空部分的颜色处理）&#60;/p&#62;
&#60;p&#62;（2）最小化按钮（4个状态）&#60;br /&#62;
命名：minimize.bmp&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image007.jpg&#34; /&#62;&#60;br /&#62;
重点：凡是功能按钮都要做4种状态，并把这四种状态做在一张图里，存储成.BMP格式，注意每种状态按钮他的宽度和高度要一致，说一下每种状态代表的含义&#60;br /&#62;
第一个状态：自然状态&#60;br /&#62;
第二个状态：鼠标划过时的状态&#60;br /&#62;
第三个状态：鼠标按下去时的状态&#60;br /&#62;
第四个状态：按钮失效时的状态（举个例子，比如播放列表只有一首歌曲，那么“下一首”按钮就是无法点击的，那么此时这个按钮状态就是失效时的状态）&#60;/p&#62;
&#60;p&#62;3）迷你模式按钮&#60;br /&#62;
命名：minimode.bmp&#60;br /&#62;
   同上，这里不再赘述了。&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image009.jpg&#34; /&#62;&#60;br /&#62;
（4）关闭按钮&#60;br /&#62;
命名：close.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image011.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（5）播放进度滑块（本例中播放进度条上的小圆按钮）&#60;br /&#62;
命名：progress_thumb.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image013.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;重点：这个小按钮是需要脱离背景部分单独扣出来的，那么镂空部分需要如何处理才能最终在界面上显示出透明的效果呢，解决的办法和上面的大背景镂空处理一样就是把镂空填充成（#ff00ff）这个颜色，如上图。&#60;/p&#62;
&#60;p&#62;（6）播放进度填充背景图&#60;br /&#62;
命名：progress_fill.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image015.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;缓冲进度条填充背景图&#60;br /&#62;
该进度条在听在线歌曲发生缓冲时出现，如果没有该元素，默认方式是会将进度条的颜色加深，作为缓冲条颜色显示。&#60;br /&#62;
命名：progress_fill2.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/progress_fill2.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（7）播放列表窗口打开关闭按钮&#60;br /&#62;
命名：playlist.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image017.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（8）均衡器窗口打开关闭按钮&#60;br /&#62;
命名：equalizer.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image019.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（9）歌词窗口打开关闭按钮&#60;br /&#62;
命名：lyric.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image021.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（10）“上一首”按钮&#60;br /&#62;
命名：prev.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image023.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（11）“播放”按钮&#60;br /&#62;
命名：play.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image025.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（12）“暂停”按钮&#60;br /&#62;
命名：pause.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image027.jpg&#34; /&#62; &#60;/p&#62;
&#60;p&#62;(13)“下一首”按钮&#60;br /&#62;
命名：next.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image029.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;(14)“打开播放文件”按钮&#60;br /&#62;
命名：open.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/dakai.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;(15)音量小喇叭按钮&#60;br /&#62;
命名：mute.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image031.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;(16)音量进度背景填充图&#60;br /&#62;
命名：progress2.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image033.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;(17)音量滑块&#60;br /&#62;
同（5） &#60;/p&#62;
&#60;p&#62;二、均衡器窗口的控件&#60;br /&#62;
（18）开启按钮&#60;br /&#62;
命名：eq_enabled.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image035.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（19）重设按钮&#60;br /&#62;
命名：reset.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image037.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（20）配置按钮&#60;br /&#62;
命名：eq_profile.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image039.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（21）关闭按钮，切图同主窗口上的关闭按钮&#60;br /&#62;
（22）平衡器环绕声所有滑动的小按钮   同（5）&#60;br /&#62;
（23）平衡，环绕填充背景&#60;br /&#62;
命名：eqfactor_full2.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image041.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（24）均衡填充背景&#60;br /&#62;
命名：eqfactor_full.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image043.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;三、播放列表窗口的控件&#60;br /&#62;
（25）关闭按钮，同主窗口关闭按钮&#60;br /&#62;
（26）工具条按钮，&#60;br /&#62;
命名：playlist_toolbar.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image045.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;热点状态命名：playlist_toolbar_hot.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image047.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（27）滚动条上下按钮&#60;br /&#62;
命名：scrollbar_button.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image001.png&#34; /&#62;   重点：将上下按钮拼在一张图上制作&#60;/p&#62;
&#60;p&#62;（28）滚动条滑动按钮&#60;br /&#62;
命名：scrollbar_thumb.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image049.jpg&#34; /&#62; &#60;/p&#62;
&#60;p&#62;（29）滚动条背景&#60;br /&#62;
命名：scrollbar_bar.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image051.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;四、歌词秀窗口的控件&#60;br /&#62;
（30）关闭按钮，同主窗口&#60;br /&#62;
（31）总在最前按钮&#60;br /&#62;
命名：ontop.bmp&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image053.jpg&#34; /&#62; &#60;/p&#62;
&#60;p&#62;五、音乐窗窗口的控件&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image055.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;上图为千千音乐窗界面，其中用绿色边框套住的部分为显示部分，和皮肤设计无关，就是说我们要做的是绿色边框外的内容。&#60;/p&#62;
&#60;p&#62;好，明确了制作部分，开始讲制作过程，首先，要制作一个窗口背景，就是图中显示的最外面的蓝色风格的窗口，像主窗口一样，不难理解，格式同样为.bmp，需要设置透明色背景（#FF00ff），注意圆角像素的处理。&#60;/p&#62;
&#60;p&#62;然后制作窗口里的控件，上图中用红色框标出了所有控件，包括后退、前进、刷新、关闭、多选框、连接文字区。其中后退、前进的功能是像网页一样的控制当前页面，并不是歌曲的后退、前进，不过也没影响，不多说了。&#60;/p&#62;
&#60;p&#62;最后，还要制作一个按钮，用来打开音乐窗，按钮要做在主窗口上，做主窗口时别忘了留出地方哦...&#60;/p&#62;
&#60;p&#62;具体切图示例如下，大家一看就会明白啦：&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image057.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;（B）修改配置文件&#60;br /&#62;
一、首先看一下skin.xml这个配置文件&#60;br /&#62;
&#38;lt;skin version=&#34;2&#34; name=&#34;静听•蔚蓝&#34; author=&#34;千千静听&#34; url=&#34;http://www.ttplayer.com&#34; email=&#34;none&#34; transparent_color=&#34;#ff00ff&#34;&#38;gt;&#60;br /&#62;
以上是皮肤的基本描述信息，请根据您自己的情况填写，分别是版本号，皮肤名称，皮肤作者，地址，电子邮箱，透明色的设置&#60;br /&#62;
1、&#38;lt;player_window&#38;gt;和&#38;lt;/player_window&#38;gt;之间的代码&#60;br /&#62;
它是描述主窗口的参数设置的&#60;br /&#62;
Position 是坐标定位，image是图片名称，就是我刚才讲述的每个图片的命名&#60;br /&#62;
坐标由4个数字组成，中间用逗号隔开，前两个数字是图片左上角的x坐标和y坐标，后两个数字是图片右下角的x坐标和y坐标,请注意，这里的右下角x坐标和y坐标都要多算一个点，否则播放器会少显示两条边；&#60;br /&#62;
这里需要注意的是：每个窗口的位置是组合窗口后抓的坐标，而每个窗口上面的按钮控件是单独定位的，比如，我们要获得歌词秀窗口上面的关闭按钮的坐标，是要把歌词秀窗口的左上角定位在切图软件（0，0）坐标上，然后再抓关闭按钮的坐标。&#60;br /&#62;
可以参考下图来理解代码&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image058.jpg&#34; /&#62; &#60;/p&#62;
&#60;p&#62;&#38;lt;player_window image=&#34;player_skin.bmp&#34;&#38;gt;&#60;br /&#62;
&#38;lt;play position=&#34;50, 123, 90, 163&#34; image=&#34;play.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;pause position=&#34;50, 123, 90, 163&#34; image=&#34;pause.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;prev position=&#34;9, 123, 49, 163&#34; image=&#34;prev.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;next position=&#34;132, 123, 172, 163&#34; image=&#34;next.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;stop position=&#34;91, 123, 131, 163&#34; image=&#34;stop.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;mute position=&#34;183, 137, 194, 148&#34; image=&#34;mute.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#38;lt;lyric position=&#34;248, 112, 272, 126&#34; image=&#34;lyric.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;equalizer position=&#34;223, 112, 242, 126&#34; image=&#34;equalizer.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;playlist position=&#34;197, 112, 216, 126&#34; image=&#34;playlist.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;browser position=&#34;214, 86, 276, 106&#34; image=&#34;browser.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#38;lt;minimize position=&#34;230, 3, 247, 21&#34; image=&#34;minimize.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;minimode position=&#34;248, 3, 265, 21&#34; image=&#34;minimode.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;exit position=&#34;266, 3, 283, 21&#34; image=&#34;close.bmp&#34;/&#38;gt;&#60;/p&#62;
&#60;p&#62;&#38;lt;progress position=&#34;7, 112, 184, 123&#34; bar_image=&#34;&#34; thumb_image=&#34;progress_thumb.bmp&#34; fill_image=&#34;progress_fill.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;volume position=&#34;197, 136, 277, 147&#34; vertical=&#34;false&#34; bar_image=&#34;&#34; thumb_image=&#34;progress_thumb.bmp&#34; fill_image=&#34;progress2.bmp&#34;/&#38;gt;&#60;/p&#62;
&#60;p&#62;以下文字是播放器上面的一些显示文字的设置&#60;br /&#62;
Icon是千千静听的logo；&#60;br /&#62;
info是音乐标题和专辑歌手的信息，轮显在播放器窗口上；&#60;br /&#62;
led是时间数字，这里不是文字代码，是做好了一张图片，这张图片由大小相等的12个字符组成， 0 1 2 3 4 5 6 7 8 9 : -&#60;br /&#62;
记住这12个字符缺一不可。&#60;br /&#62;
Stereo  是立体声的字体设置&#60;br /&#62;
Status是状态的字体设置&#60;br /&#62;
Visual是视觉效果的设置，这里面只是简单定义了位置，更详细的设置请看Visual.xml文件&#60;/p&#62;
&#60;p&#62;&#38;lt;icon position=&#34;4, 3, 20, 19&#34; image=&#34;TTPlayer.ico&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;info position=&#34;21, 34, 208, 49&#34; color=&#34;#ffffff&#34; font=&#34;Tahoma&#34; font_size=&#34;13&#34; align=&#34;left&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;led position=&#34;160, 37, 270, 49&#34; image=&#34;number.bmp&#34; align=&#34;right&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;stereo position=&#34;224, 54, 273, 70&#34; color=&#34;#ffffff&#34; font=&#34;Tahoma&#34; font_size=&#34;13&#34; align=&#34;right&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;status position=&#34;200, 70, 273, 86&#34; color=&#34;#ffffff&#34; font=&#34;Tahoma&#34; font_size=&#34;13&#34; align=&#34;right&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;visual position=&#34;17, 56, 185, 106&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;/player_window&#38;gt;&#60;/p&#62;
&#60;p&#62;2、歌词秀窗口的代码&#60;br /&#62;
参考如下图一起看&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image059.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;&#38;lt;lyric_window position=&#34;0, 393, 287, 475&#34; resize_rect=&#34;49, 25, 245, 73&#34; image=&#34;lyric_skin.bmp&#34;&#38;gt;&#60;br /&#62;
&#38;lt;lyric position=&#34;10, 25, 277, 73&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;close position=&#34;221, 3, 283, 20&#34; image=&#34;close.bmp&#34; align=&#34;right&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;ontop position=&#34;202, 3, 264, 20&#34; image=&#34;ontop.bmp&#34; align=&#34;right&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;/lyric_window&#38;gt;&#60;/p&#62;
&#60;p&#62;3、均衡器窗口的代码&#60;br /&#62;
 &#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image060.jpg&#34; /&#62;&#60;br /&#62;
&#38;lt;equalizer_window position=&#34;0, 165, 287, 279&#34; image=&#34;eq_skin.bmp&#34; eq_interval=&#34;5&#34;&#38;gt;     &#60;/p&#62;
&#60;p&#62;&#38;lt;close position=&#34;266, 3, 283, 20&#34; image=&#34;close.bmp&#34; align=&#34;right&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;enabled position=&#34;152, 3, 187, 21&#34; image=&#34;eq_enabled.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;profile position=&#34;224, 3, 259, 21&#34; image=&#34;eq_profile.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;reset position=&#34;188, 3, 223, 21&#34; image=&#34;reset.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;balance position=&#34;15, 45, 71, 56&#34; thumb_image=&#34;progress_thumb.bmp&#34; bar_image=&#34;&#34;  fill_image=&#34;eqfactor_full2.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;surround position=&#34;15, 76, 71, 87&#34; thumb_image=&#34;progress_thumb.bmp&#34; bar_image=&#34;&#34;  fill_image=&#34;eqfactor_full2.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;preamp position=&#34;81, 36, 92, 99&#34; thumb_image=&#34;progress_thumb.bmp&#34; bar_image=&#34;&#34;  fill_image=&#34;eqfactor_full.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;eqfactor position=&#34;115, 36, 126, 98&#34; thumb_image=&#34;progress_thumb.bmp&#34; bar_image=&#34;&#34; fill_image=&#34;eqfactor_full.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;/equalizer_window&#38;gt;&#60;/p&#62;
&#60;p&#62;4、播放列表窗口的代码&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image061.jpg&#34; /&#62;&#60;br /&#62;
&#38;lt;playlist_window position=&#34;0, 279, 287, 393&#34; resize_rect=&#34;61, 43, 265, 105&#34; image=&#34;playlist_skin.bmp&#34;&#38;gt;&#60;br /&#62;
&#38;lt;close position=&#34;221, 2, 283, 19&#34; image=&#34;close.bmp&#34; align=&#34;right&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;toolbar position=&#34;10, 24, 278, 41&#34; image=&#34;playlist_toolbar.bmp&#34; hot_image=&#34;playlist_toolbar_hot.bmp&#34; align=&#34;left&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;scrollbar buttons_image=&#34;scrollbar_button.bmp&#34; thumb_image=&#34;scrollbar_thumb.bmp&#34; bar_image=&#34;scrollbar_bar.bmp&#34; align=&#34;center&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;playlist position=&#34;10, 43, 278, 105&#34; selected_image=&#34;playlist_selected.bmp&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;/playlist_window&#38;gt;&#60;/p&#62;
&#60;p&#62;1、 迷你窗口的代码&#60;br /&#62;
 &#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image062.jpg&#34; /&#62;&#60;br /&#62;
&#38;lt;mini_window image=&#34;mini-player.bmp&#34;&#38;gt;&#60;br /&#62;
&#38;lt;play position=&#34;177, 3, 271, 27&#34; image=&#34;play_mini.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;pause position=&#34;177, 3, 271, 27&#34; image=&#34;pause_mini.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;prev position=&#34;153, 3, 247, 27&#34; image=&#34;prev_mini.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;next position=&#34;224, 3, 318, 27&#34; image=&#34;next_mini.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;stop position=&#34;201, 3, 295, 27&#34; image=&#34;stop_mini.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;lyric position=&#34;269, 17, 379, 27&#34; image=&#34;lyric_mini.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;minimode position=&#34;272, 3, 335, 20&#34; image=&#34;minimode.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;minimize position=&#34;255, 3, 317, 20&#34; image=&#34;minimize.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;exit position=&#34;289, 3, 351, 20&#34; image=&#34;close.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;icon position=&#34;3, 6, 19, 22&#34; image=&#34;TTPlayer.ico&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;info position=&#34;27, 7, 142, 22&#34; color=&#34;#ffffff&#34; font=&#34;Tahoma&#34; font_size=&#34;13&#34; align=&#34;left&#34;/&#38;gt;&#60;br /&#62;
&#38;lt;/mini_window&#38;gt;&#60;/p&#62;
&#60;p&#62;2、 音乐窗的代码（代码后面//部分为注释）&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image063.jpg&#34; /&#62;&#60;br /&#62;
&#38;lt;browser_window position=&#34;540, 0, 810, 336&#34; image=&#34;browser_skin.bmp&#34; transparent_color=&#34;#ff00ff&#34;&#38;gt;&#60;br /&#62;
&#38;lt;close position=&#34;452, 3, 469, 19&#34; image=&#34;close.bmp&#34; /&#38;gt; //关闭按钮位置&#60;br /&#62;
&#38;lt;backward position=&#34;112, 3, 133, 19&#34; image=&#34;browser_backward.bmp&#34; /&#38;gt; //后退按钮位置&#60;br /&#62;
&#38;lt;forward position=&#34;148, 3, 169, 19&#34; image=&#34;browser_forward.bmp&#34; /&#38;gt; //前进按钮位置&#60;br /&#62;
&#38;lt;refresh position=&#34;186, 2, 207, 18&#34; image=&#34;browser_refresh.bmp&#34; /&#38;gt; //刷新按钮位置&#60;br /&#62;
&#38;lt;startup position=&#34;7, 458, 144, 473&#34; ckbox_image=&#34;browser_startup.bmp&#34; interval=4 color=&#34;#ffffff&#34; font=&#34;SimSun&#34; font_size=&#34;12&#34; /&#38;gt; //多选框的位置，注意X坐标要包括后面的文字，interval的值为多选框和文字之间的距离&#60;br /&#62;
&#38;lt;linktxt position=&#34;280, 457, 464, 472&#34; color=&#34;#ffffff&#34; font=&#34;SimSun&#34; font_size=&#34;12&#34; /&#38;gt; //连接文字区域，建议多留一些，以显示更多的文字内容&#60;br /&#62;
&#38;lt;browser position=&#34;9, 26, 464, 447&#34; /&#38;gt; //html网页位置，和“歌词秀”中的歌词显示范围性质一样&#60;br /&#62;
&#38;lt;/browser_window&#38;gt;&#60;/p&#62;
&#60;p&#62;二、下面看一下Lyric.xml这个配置文件&#60;br /&#62;
以下是歌词文字的设置，分别定义了字体类型，字体颜色，高亮颜色和背景颜色&#60;br /&#62;
&#38;lt;ttplayer_lyric&#38;gt;&#60;br /&#62;
&#38;lt;Lyric&#60;br /&#62;
Font=&#34;-11,0,0,0,400,0,0,0,134,3,2,4,49,Tahoma&#34;&#60;br /&#62;
TextColor=&#34;#008CC1&#34;&#60;br /&#62;
HilightColor=&#34;#005489&#34;&#60;br /&#62;
BkgndColor=&#34;#F4FBFE&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;/ttplayer_lyric&#38;gt;&#60;/p&#62;
&#60;p&#62;三、下面看一下Playlist.xml这个配置文件&#60;br /&#62;
这个是播放列表窗口的文字设置，分别定义了字体类型，字体颜色，高亮颜色，第一背景颜色，数字颜色，时间颜色，当前选择颜色，第二背景颜色（可以和第一背景颜色一致）&#60;br /&#62;
&#38;lt;ttplayer_playlist&#38;gt;&#60;br /&#62;
 &#38;lt;PlayList&#60;br /&#62;
  Font=&#34;-11,0,0,0,400,0,0,0,134,3,2,4,49,Tahoma&#34;&#60;br /&#62;
  Color_Text=&#34;#008CC1&#34;&#60;br /&#62;
  Color_Hilight=&#34;#005489&#34;&#60;br /&#62;
  Color_Bkgnd=&#34;#EAF5FA&#34;&#60;br /&#62;
  Color_Number=&#34;#005489&#34;&#60;br /&#62;
  Color_Duration=&#34;#005489&#34;&#60;br /&#62;
  Color_Select=&#34;#84CEF9&#34;&#60;br /&#62;
  Color_Bkgnd2=&#34;#EAF5FA&#34;&#60;br /&#62;
 /&#38;gt;&#60;br /&#62;
&#38;lt;/ttplayer_playlist&#38;gt;&#60;/p&#62;
&#60;p&#62;四、下面看一下Visual.xml这个配置文件&#60;br /&#62;
这个是用来设置视觉显示的效果，我们先给大家介绍一下千千静听都提供哪几种视觉效果：&#60;br /&#62;
1、 频谱分析&#60;br /&#62;
2、 梦幻星空&#60;br /&#62;
3、 视波显示&#60;br /&#62;
4、 专辑封面&#60;br /&#62;
5、 不显示视频效果&#60;br /&#62;
这5种情况只要在播放器主窗口上面点击鼠标右键即可切换&#60;br /&#62;
如图：&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image065.jpg&#34; /&#62;&#60;br /&#62;
下面的配置文件是用来设置各种视觉效果颜色的，大家可以试试看，调出你喜欢的效果来&#60;br /&#62;
&#38;lt;ttplayer_visual&#38;gt;&#60;br /&#62;
 &#38;lt;Visual&#60;br /&#62;
  SpectrumTopColor=&#34;#FFFFFF&#34;&#60;br /&#62;
  SpectrumBtmColor=&#34;#07F7FF&#34;&#60;br /&#62;
  SpectrumMidColor=&#34;#8CDCFF&#34;&#60;br /&#62;
  SpectrumPeakColor=&#34;#FFFFFF&#34;&#60;br /&#62;
  SpectrumWide=&#34;1&#34;&#60;br /&#62;
  BlurSpeed=&#34;3&#34;&#60;br /&#62;
  Blur=&#34;1&#34;&#60;br /&#62;
  BlurScopeColor=&#34;#07F7FF&#34;&#60;br /&#62;
  TextColor=&#34;#FFFFFF&#34;&#60;br /&#62;
  Font=&#34;-11,0,0,0,400,0,0,0,134,3,2,4,49,Tahoma&#34;&#60;br /&#62;
 /&#38;gt;&#60;br /&#62;
&#38;lt;/ttplayer_visual&#38;gt;&#60;/p&#62;
&#60;p&#62;(C)打包成皮肤文件&#60;br /&#62;
好了，以上就是皮肤制作的整个过程啦，把上面的切图和配置文件制作好后，就可以打包成皮肤文件了，可以用WinRAR或WinZIP等压缩工具，以WinRAR为例，先按键盘上的Ctrl＋A全选所有文件，然后将全部文件添加到压缩文件夹，压缩文件格式选择&#34;zip&#34;，压缩方式可选择&#34;最好&#34;，再点击&#34;确定&#34;就行了！&#60;br /&#62;
（D）应用皮肤&#60;br /&#62;
将这个压缩文件复制到千千安装目录下的Skin文件夹，然后在&#34;千千选项...&#34;－&#34;皮肤&#34;中就可以选择应用皮肤了，或直接在主面板上点击右键－&#34;选择皮肤&#34;即可！&#60;/p&#62;
&#60;p&#62;或许您已经了解皮肤的制作方法了，为了更深入的理解，我们增加以下部分的内容帮助您消化：&#60;/p&#62;
&#60;p&#62;三、几个重要的属性解释&#60;br /&#62;
position：这是众元素中最基本的属性之一，用于定义窗口背景及按钮的位置及大小，参数值格式为 &#34;a, b ,c ,d&#34;，这4个数值既固定了元素的位置也确定了其大小，其中(a, b)为左上角的坐标，(c, d)为右下角的坐标，c-a 就是长度，d-b 就是高度，坐标原点要分两种情况：如果是歌词秀、均衡器、播放列表这3个子窗口的position，则是把主窗口的左上角作为它们的坐标原点；如果是各窗口内部按钮的position，则是把对应的各窗口的左上角作为坐标原点，比如歌词秀窗口中的&#34;关闭&#34;按钮就是以歌词秀背景图片的左上角为原点，其它依此类推！&#60;/p&#62;
&#60;p&#62;特别地：①播放列表中的scrollbar元素不需要定义position属性，它的位置会自动固定在playlist的最右边；②主窗口中的progress、volume元素及均衡器窗口中的balance、surround、preamp元素的position属性表示的是滑块能够移动的范围的坐标；③播放列表衡器窗口中的playlist元素、歌词秀衡器窗口中的lyric元素的position属性表示的是播放列表和歌词的显示范围，当播放列表窗口和歌词秀窗口改变大小时，这两个元素会自动跟着改变大小，但它们的四个边和窗口的四个边的距离就是通过这个position来体现的；&#60;br /&#62;
 resize_rect：歌词秀和播放列表窗口特有的属性，用于定义这两个窗口可被拉伸的部分，其参数格式同position，代表的是当改变窗口大小时只有这个矩形框内的部分才会被拉长，在这个范围外的部分则不会变化，另外还有一个属性resize_tile是对应使用的，其参数值可以为0或1，其中0表示在改变窗口大小时采用拉伸的方式，1表示采用平铺的方式，该属性可省略不写，即使用默认值0；&#60;/p&#62;
&#60;p&#62;此外，歌词秀和播放列表窗口还有一个可选择的元素：title，可在有特定需要时(比如在改变窗口大小时标题保持居中等)使用，格式如下：&#60;/p&#62;
&#60;p&#62;&#38;lt;title position=&#34;...&#34; image=&#34;...&#34; align=&#34;...&#34; /&#38;gt;&#60;br /&#62;
align：用于定义元素的对齐方式，参数值分两种情况：一种是存在于主窗口中的led、info、stereo、status元素内，此时可以取值为left、center、right，代表这些文字的缩进方式；第二种是存在于歌词秀窗口中的title、close、ontop元素内，播放列表窗口的title、close、toolbar元素内，此时可以取值为left、center、right、top、bottom等，代表当调整窗口大小时元素位置相对于边框移动，如果要同时设置垂直对齐和水平对齐方式，可以用英文加号将二者连在一起，比如&#34;top+left&#34;表示在垂直方向上顶部对齐、在水平方向上左对齐；&#60;br /&#62;
vertical：存在于主窗口中的progress、volume元素，参数值可以为true或false，其中取true时指滑块按垂直方向移动，取false时滑块按水平方向移动；&#60;br /&#62;
thumb_resize_center：存在于播放列表窗口中的scrollbar元素内，用于定义scrollbar的thumb滑块中间可以进行平铺缩放的部分的大小，如果取值为0，则代表在改变播放列表窗口高度大小时滑块进行不缩放；&#60;br /&#62;
thumb_resize_tile：存在于播放列表窗口中的scrollbar元素内，作用与播放列表窗口和歌词秀窗口的resize_tile相同；&#60;br /&#62;
hot_image：存在于播放列表窗口中的toolbar元素内，用于定义播放列表工具栏中当鼠标经过时的图片形态。此属性可选择，如省略不写的话程序会自动生成鼠标经过时的按钮状态；&#60;br /&#62;
eq_interval：存在于均衡器窗口中的equalizer_window元素内，指eqfactor元素中10个波段的间隔大小(另：eqfactor元素的position属性表示的是10个滑块中第一个滑块的位置，而其它属性对于所有10个滑块都有效)；&#60;br /&#62;
icon：存在于主窗口中的icon元素内，用于自定义皮肤图标，必须将图标文件(*.ico，16*16)放于皮肤文件夹中并一起打包压缩。此属性可选择，如省略不写的话则使用默认的程序图标；&#60;br /&#62;
left_top_color、right_bottom_color：存在于歌词秀窗口中的mini_border元素内，用于定义在迷你模式下歌词秀窗口的左上边框和右下边框的颜色；&#60;br /&#62;
迷你窗口：&#60;br /&#62;
迷你模式其实是独立于主窗口外的另外一个皮肤，不过在迷你模式下省略了播放列表和均衡器窗口、简化了歌词秀窗口和主窗口。迷你窗口里的所有元素、属性及参数都是和主窗口一样的，它们都被包含于&#38;lt;mini_window&#38;gt;和&#38;lt;/mini_window&#38;gt;中，相当于主窗口中的&#38;lt;player_window&#38;gt; &#38;lt;/player_window&#38;gt;；&#60;br /&#62;
迷你模式就是为了减小屏幕大小占用及简化按钮，故迷你窗口各按钮也要相应调整缩小，并省略部分不常用的按钮，比如音量调节等，一般只保留下&#34;播放/暂停&#34;、&#34;停止&#34;、&#34;后退&#34;、&#34;前进&#34;、&#34;静音&#34;、&#34;图标&#34;、&#34;视觉效果&#34;等即可。另外，迷你模式下的歌词秀窗口的位置和长度是固定的，高度则是和迷你模式的背景图片高度相同。&#60;/p&#62;
&#60;p&#62;四、皮肤制作注意事项及技巧：&#60;br /&#62;
1.压缩皮肤文件时，不是压缩整个文件夹，而是应该进入文件夹后按Ctrl＋A全选所有文件，然后再添加到压缩文件(zip格式)，否则皮肤无效；&#60;/p&#62;
&#60;p&#62;2.播放列表和歌词秀窗口的position属性定义了这两个窗口初始化时的大小，这个大小可以不是图片的实际大小。这两个窗口在初始化时就会按照resize_rect的规则拉伸窗口至所设置的大小。此外，这两个窗口最大可以拉伸到与屏幕同样大小，但最小只能缩小到与原始图片同样的大小，所以原始图片应该尽量画得小一些，这样可以方便用户把窗口缩成最小，同时还可以稍微减少图片及皮肤大小；&#60;br /&#62;
注：这个时候窗口上的按钮的position属性是按图片的实际大小来确定坐标的；&#60;/p&#62;
&#60;p&#62;3.bmp图片(尤其是几个面积较大的窗口背景图片)应尽量转换为8位的索引颜色，这样可以极大地减少图片及皮肤的大小，同时在应用皮肤时可以减少内存占用率。&#60;br /&#62;
具体的方法为：在Adobe Photoshop中，打开RGB模式的图片，然后点击&#34;图像&#34;－&#34;模式&#34;－&#34;索引颜色&#34;，再保存即可！注：如果有透明色时要注意两点：①在填充透明色时，一定不要选&#34;容差&#34;；②转换时一定要选中&#34;保留原实际颜色&#34;，以防止填充的透明色被改掉。&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image067.jpg&#34; /&#62;&#60;br /&#62;
4.当按钮很小的时候，不要将其透明，而是和背景图片连在一起！因为我们知道，皮肤中透明的部分是不感应鼠标动作的，因此当按钮比较小的时候如果中间有很小的缝隙，鼠标移动到上面时就会乱跳，不便于点击操作！如图所示：&#60;br /&#62;
&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image069.jpg&#34; /&#62; &#60;/p&#62;
&#60;p&#62;5.在制作皮肤时最好做一部分预览一下效果，这样有问题的地方可以及时修改过来&#60;/p&#62;
&#60;p&#62;6.如果不想在主窗口或迷你模式中显示千千静听的图标，可以将图标的position设置为超过窗口大小，比如&#34;500, 500, 516, 516&#34;；&#60;br /&#62;
7.在主窗口中的led元素(即播放时间)有两种显示方式，一种是已播放的时间，一种是未播放的时间，鼠标点击即可在两种显示方式之间切换。后者比前者多了一个负号，因此在主窗口上应至少给led留出6位的空间，以防止在显示剩余时间时数字覆盖到面板上的其它部分而影响美观；led元素使用的图片必须是12张同样大小的图片排在一起，分别代表0-9十个数字、冒号和减号(可以使用透明色)；&#60;br /&#62;
8.如果不想显示某个窗口或者各窗口上的某些元素，把相应的元素代码全部删除即可；&#60;br /&#62;
9.如果是用记事本打开XML文件的，那存储的时候尽量编码设置成ANSI；如下图所示：&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/image071.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;10、关于坐标定位的小技巧：&#60;br /&#62;
大家注意一下坐标定义的问题，拿一个20*20的小图为例，它的位置是150，30，170，50，大家来看这个坐标，一定认为没有问题，但实际效果会显示不全，为什么呢，因为坐标的X轴有一个小小的误差问题，要多加2像素才可以哦，正确的定位是150，30，172，50。大家在制作时注意一下。 &#60;/p&#62;
&#60;p&#62;制作千千皮肤的基本方法就只有这么多，但是技巧远不止这些，大家可以在制作的过程中不断实践摸索，并发挥自己的创造力，设计出各种有创意的皮肤来！&#60;/p&#62;
&#60;p&#62;鸣谢：发呆的猴子，很高很瘦&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/0.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/00.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;五、新增桌面歌词工具条制作方法（2009年4月8日）&#60;/p&#62;
&#60;p&#62;《图0》《图00》&#60;br /&#62;
首先要在歌词秀原来的代码中加入：&#60;br /&#62;
&#38;lt;desklrc position=&#34;按钮具体坐标&#34; image=&#34;desklrc.bmp&#34; align=&#34;right&#34;/&#38;gt;&#60;br /&#62;
其中的“desklrc.bmp”就是桌面歌词开启按钮，见上图。&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/01.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图1》&#60;br /&#62;
制作桌面歌词面板，首先还是从背景图开始，方法和其他面板是一样的，文件名为“desklrc_bar.bmp”，效果见图1，代码示例如下：&#60;br /&#62;
&#38;lt;desklrc_bar image=&#34;desklrc_bar.bmp&#34; transparent_color=&#34;#ff00ff&#34;&#38;gt;&#38;lt;/desklrc_bar&#38;gt;&#60;br /&#62;
注意按钮的代码要写在&#38;lt;desklrc_bar&#38;gt;和&#38;lt;/desklrc_bar&#38;gt;之间。&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/02.jpg&#34; /&#62; &#60;/p&#62;
&#60;p&#62;《图2》&#60;br /&#62;
桌面歌词皮肤元素主要包含12个按钮元素，制作过程和其他面板类似，下面按照摆放顺序进行讲解：&#60;/p&#62;
&#60;p&#62;首先是制作功能图标位置，和主面板的icon一致，主要是定坐标，代码示例如下：&#60;br /&#62;
&#38;lt;icon position=&#34;11, 7, 27, 23&#34; icon=&#34;TTPlayer.ico&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/03.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图3》&#60;br /&#62;
播放按钮的文件名为“desklrc_play.bmp”，效果见图3，代码示例如下：&#60;br /&#62;
&#38;lt;play position=&#34;29, 8, 43, 22&#34; image=&#34;desklrc_play.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/04.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图4》&#60;br /&#62;
暂停按钮位置和播放按钮要一致，文件名为“desklrc_pause.bmp”，效果见图4，代码示例如下：&#60;br /&#62;
&#38;lt;pause position=&#34;29, 8, 43, 22&#34; image=&#34;desklrc_pause.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/05.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/06.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图5》《图6》&#60;br /&#62;
上一首、下一首和播放类似，文件名为“desklrc_prev.bmp”、“desklrc_next.bmp”，效果见图5、6，代码示例如下：&#60;br /&#62;
&#38;lt;prev position=&#34;44, 8, 58, 22&#34; image=&#34;desklrc_prev.bmp&#34; /&#38;gt;&#60;br /&#62;
&#38;lt;next position=&#34;59, 8, 73, 22&#34; image=&#34;desklrc_next.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/07.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图7》&#60;br /&#62;
播放曲目按钮，文件名为“desklrc_list.bmp”，效果见图7，代码示例如下：&#60;br /&#62;
&#38;lt;list position=&#34;74, 8, 88, 22&#34; image=&#34;desklrc_list.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/08.jpg&#34; /&#62; &#60;/p&#62;
&#60;p&#62;《图8》&#60;br /&#62;
预设方案按钮，文件名为“desklrc_settings.bmp”，效果见图8，代码示例如下：&#60;br /&#62;
&#38;lt;settings position=&#34;93, 8, 108, 22&#34; image=&#34;desklrc_settings.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/09.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图9》&#60;br /&#62;
卡拉ok模式按钮，文件名为“desklrc_kalaok.bmp”，效果见图9，代码示例如下：&#60;br /&#62;
&#38;lt;kalaok position=&#34;109, 8, 124, 23&#34; image=&#34;desklrc_kalaok.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/010.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图10》&#60;br /&#62;
双行显示按钮，文件名为“desklrc_lines.bmp”，效果见图10，代码示例如下：&#60;br /&#62;
&#38;lt;lines position=&#34;126, 8, 141, 22&#34; image=&#34;desklrc_lines.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/011.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图11》&#60;br /&#62;
桌面歌词锁定按钮，文件名为“desklrc_lock.bmp”，效果见图11，代码示例如下：&#60;br /&#62;
&#38;lt;lock position=&#34;142, 8, 157, 22&#34; image=&#34;desklrc_lock.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/012.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图12》&#60;br /&#62;
总在最前按钮，文件名为“desklrc_ontop.bmp”，效果见图12，代码示例如下：&#60;br /&#62;
&#38;lt;ontop position=&#34;158, 8, 173, 22&#34; image=&#34;desklrc_ontop.bmp&#34;/&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/013.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图13》&#60;br /&#62;
返回窗口显示按钮，文件名为“desklrc_return.bmp”，效果见图13，代码示例如下：&#60;br /&#62;
&#38;lt;return position=&#34;177, 8, 192, 22&#34; image=&#34;desklrc_return.bmp&#34;/&#38;gt;&#60;/p&#62;
&#60;p&#62;&#60;img src=&#34;http://ttplayer.qianqian.com/upload/helpdocimage/image/014.jpg&#34; /&#62;&#60;/p&#62;
&#60;p&#62;《图14》&#60;br /&#62;
关闭按钮，文件名为“desklrc_close.bmp”，效果见图14，代码示例如下：&#60;br /&#62;
&#38;lt;close position=&#34;194, 8, 209, 22&#34; image=&#34;desklrc_close.bmp&#34; /&#38;gt;&#60;/p&#62;
&#60;p&#62;这样，桌面歌词面板的制作就完成了，很简单，赶快试试吧！
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Silverlight 4 Beta正式发布"</title>
<link>http://www.mdong.org/bbs/topic.php?id=50#post-55</link>
<pubDate>Thu, 19 Nov 2009 14:02:55 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">55@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;今天上午在洛杉矶举行的Professional Developer's Conference，微软正式发布了Silverlight 4 Beta。该版本属于开发人员使用版本，终端用户暂时不能下载Silverlight 4 Runtime。从下面的功能列表中可以看出，Silverlight技术越来越强大，相信不久的将来大多数企业级项目多会倾向使用Silverlight技术。&#60;/p&#62;
&#60;p&#62;官方发布网址： &#60;a href=&#34;http://www.silverlight.net/getstarted/silverlight-4-beta/&#34; rel=&#34;nofollow&#34;&#62;http://www.silverlight.net/getstarted/silverlight-4-beta/&#60;/a&#62; &#60;/p&#62;
&#60;p&#62;Silverlight 4 Beta版本新功能详解： &#60;a href=&#34;http://timheuer.com/blog/archive/2009/11/18/whats-new-in-silverlight-4-complete-guide-new-features.aspx&#34; rel=&#34;nofollow&#34;&#62;http://timheuer.com/blog/archive/2009/11/18/whats-new-in-silverlight-4-complete-guide-new-features.aspx&#60;/a&#62; &#60;/p&#62;
&#60;p&#62;------------------------------------------------------------------------------------------------------------------------ &#60;/p&#62;
&#60;p&#62;2009年11月18日，微软在洛杉矶Professional Developer's Conference（PDC） 正式发布Silverlight 4 Beta版本。&#60;/p&#62;
&#60;p&#62;Silverlight 4 Beta新功能列表：&#60;/p&#62;
&#60;p&#62;增强企业级应用开发功能 -&#60;/p&#62;
&#60;p&#62;打印支持&#60;br /&#62;
提供超过60中可自定义，可样式化的控件，其中提供了新控件RichTextBox；另外增强了Datagrid功能，允许对于列数据进行排序和改变区域尺寸，另外支持行复制和粘贴；&#60;br /&#62;
发布WCF RIA Service，方便在n-tiers 应用中对于网络和数据库的存取；&#60;br /&#62;
增强项目本地化功能，提供双向文本功能，支持30多种新语言切换；&#60;br /&#62;
支持.Net CLR类库引用，对于Silverlight桌面项目不用再做另行编译；&#60;br /&#62;
增强数据绑定功能，使数据分组，编辑以及字符格式化更加灵活，效率更高；&#60;br /&#62;
VS2010全新的设计开发工具，包括全套编辑设计界面，拖拉数据绑定功能，自动绑定控件，数据源选择，全代码自动感应系统；&#60;/p&#62;
&#60;p&#62;增强多媒体影像功能 -&#60;/p&#62;
&#60;p&#62;网络摄像和麦克录音功能，允许共享视频和语音；&#60;br /&#62;
在不用请求服务器交互的情况下，进行录音或者录像；&#60;br /&#62;
允许拖拉或者复制粘贴外部数据到应用中；&#60;br /&#62;
桌面应用，支持右键菜单；&#60;br /&#62;
对于长列表控件，增加鼠标滚动效果；&#60;br /&#62;
支持Google Chrome Browser；&#60;br /&#62;
性能大幅度优化，Silverlight 4比Silverlight 3运行要快200倍；&#60;br /&#62;
Deep Zoom功能强化，增加硬件加速，另外，支持大型dataset，动画效果更加流畅；&#60;br /&#62;
多点触控支持；&#60;br /&#62;
组播网络支持，支持互动性网络会议，以及网络教学功能；&#60;br /&#62;
H.264媒体内容保护；&#60;br /&#62;
多媒体数据流输出保护；&#60;/p&#62;
&#60;p&#62;强化客户端功能 -&#60;/p&#62;
&#60;p&#62;允许读取客户本地文件，例如读取我的文档，我的音乐，我的图片，我的视频等本地目录；&#60;br /&#62;
允许运行本地桌面应用，例如Office，发送报告到Word文档，发送Email等功能；&#60;br /&#62;
COM操作；&#60;br /&#62;
组策略功能；&#60;br /&#62;
增强键盘支持和全屏支持；&#60;br /&#62;
增强网络支持，允许在没有策略文件下支持跨域访问应用；&#60;/p&#62;
&#60;p&#62;需要了解更多Silverlight 4 Beta新功能，请访问：http://www.silverlight.net/getstarted/silverlight-4-beta/
&#60;/p&#62;</description>
</item>
<item>
<title>legenddsf on "Silverlight 武器库"</title>
<link>http://www.mdong.org/bbs/topic.php?id=47#post-54</link>
<pubDate>Tue, 10 Nov 2009 21:46:22 +0000</pubDate>
<dc:creator>legenddsf</dc:creator>
<guid isPermaLink="false">54@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;支持版版~&#60;/p&#62;
&#60;p&#62;麻烦版版有时间把silverlight 3的相关武器也整理下啵  <img src="http://www.mdong.org/bbs/bb-plugins/bb-smilies/default/icon_mrgreen.gif" title=":mrgreen:" class="bb_smilies" /> &#60;/p&#62;
&#60;p&#62;三克油. <img src="http://www.mdong.org/bbs/bb-plugins/bb-smilies/default/icon_razz.gif" title=":P" class="bb_smilies" /> &#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Silverlight VS Flash/Flex"</title>
<link>http://www.mdong.org/bbs/topic.php?id=49#post-53</link>
<pubDate>Tue, 10 Nov 2009 19:12:16 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">53@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;对于两个事物的比较，我们通常会从两个方面出发，共同点和不同点，今天我也打算这么来比。&#60;/p&#62;
&#60;p&#62;首先来看共同点：&#60;/p&#62;
&#60;p&#62;1. 两者都是用于RIA（富英特网应用）开发的。&#60;/p&#62;
&#60;p&#62;2. 两者都提供了基于矢量的图形/动画解决方案。&#60;/p&#62;
&#60;p&#62;3. 两者的播放器都是用ActiveX写的。&#60;/p&#62;
&#60;p&#62;4. 两者都有自己独立的图形和程序开发工具。&#60;/p&#62;
&#60;p&#62;再来看不同点，那可就多了，下面一一列举：&#60;/p&#62;
&#60;p&#62;文件格式&#60;/p&#62;
&#60;p&#62;  Flash/Flex&#60;br /&#62;
 Silverlight&#60;/p&#62;
&#60;p&#62;UI代码文件 .fla, .mxml .xaml&#60;br /&#62;
后台代码文件 .fla, .as  .cs, .vb, .js&#60;br /&#62;
编译后文件 .swf, .swc .dll &#60;/p&#62;
&#60;p&#62;支持的浏览器、操作系统&#60;/p&#62;
&#60;p&#62;  Flash/Flex&#60;br /&#62;
 Silverlight&#60;br /&#62;
 Moonlight&#60;/p&#62;
&#60;p&#62;浏览器 Firefox, IE, Safari Firefox, IE, Safari Firefox, IE, Safari&#60;br /&#62;
操作系统 Windows, Mac, Linux  Windows, Mac Linux &#60;/p&#62;
&#60;p&#62;编程语言&#60;/p&#62;
&#60;p&#62;  Flash/Flex&#60;br /&#62;
 Silverlight&#60;/p&#62;
&#60;p&#62;UI描述语言 MXML XAML&#60;br /&#62;
主语言 ActionScript JavaScript,C#, VB.NET &#60;/p&#62;
&#60;p&#62;产品发布&#60;/p&#62;
&#60;p&#62;  Flash/Flex Silverlight&#60;br /&#62;
1996 Flash 1 (Macromedia)&#60;br /&#62;
1997 Flash 2 (Macromedia)&#60;br /&#62;
1998 Flash 3 (Macromedia)&#60;br /&#62;
1999 Flash 4 (Macromedia)&#60;br /&#62;
2000 Flash 5 (Macromedia)&#60;br /&#62;
2002 Flash MX (Macromedia)&#60;br /&#62;
2004 Flash MX 2004 (Macromedia), Flex 1 (Macromedia)&#60;br /&#62;
2005 Flash 8&#60;br /&#62;
2006 Flex 2 (Adobe) WPF/E&#60;br /&#62;
2007 Flash Player 9, Flash CS3 Silverlight 1.0, Expression Studio 1.x, Visual Studio 2008&#60;br /&#62;
2008 Flash Player 10, Flash CS4 , Flex 3  Silverlight 2, Expression Studio 2, Visual Studio 2008 sp1&#60;br /&#62;
2009 Flex 4, Flash Catalyst Silverlight 3, Visual Studio 2010&#60;br /&#62;
2010 ？ ？ &#60;/p&#62;
&#60;p&#62;功能&#60;/p&#62;
&#60;p&#62;  Flash 8/9 Flex 3/Flash 10 Silverlight 2&#60;br /&#62;
控件库 有 有 有&#60;br /&#62;
UI界面描述语言 没有 MXML XAML&#60;br /&#62;
2D矢量图形/动画 支持 支持 支持&#60;br /&#62;
3D矢量图形/动画 不支持 支持 部分支持&#60;br /&#62;
脚本引擎 ActionScript2/3 ActionScript 3 JavaScript&#60;br /&#62;
图形硬件加速 不支持 支持 部分支持&#60;br /&#62;
流媒体 部分支持 支持 支持&#60;br /&#62;
视频、音频解码器 无 部分 有&#60;br /&#62;
高清视频（&#38;gt;720p） 无 无 有&#60;br /&#62;
P2P（Socket通讯） 支持 支持 支持&#60;br /&#62;
在线录音 支持 支持 不支持&#60;br /&#62;
在线摄像 支持 支持 不支持&#60;br /&#62;
跨域策略 支持 支持 支持&#60;br /&#62;
与JavaScript通讯 支持 支持 支持&#60;br /&#62;
本地存储 支持 支持 支持&#60;br /&#62;
与服务器进行数据交换（如Web服务） 支持 支持 支持&#60;br /&#62;
与AJAX融合的能力 支持 支持 支持&#60;br /&#62;
内容保护功能 无 FMRMS DRM&#60;br /&#62;
SEO优化 不支持 支持 支持&#60;br /&#62;
本地化 不支持 支持 支持&#60;br /&#62;
深度缩放（电子地图需要用到的技术） 不支持 不支持 支持&#60;br /&#62;
跨平台 支持 支持 部分支持，不支持Linux&#60;br /&#62;
图像文件 支持 支持 仅支持jpg和png&#60;br /&#62;
媒体标记 不支持 不支持 支持&#60;br /&#62;
位图特效（bitmap effects）     支持&#60;br /&#62;
远程调试 不支持 不支持 支持&#60;br /&#62;
文件上传     支持&#60;br /&#62;
XML 支持 支持 支持&#60;br /&#62;
XSLT 不支持 不明 支持&#60;br /&#62;
移动设备支持 有 有 有 &#60;/p&#62;
&#60;p&#62;部署&#60;/p&#62;
&#60;p&#62;  Adobe Microsoft&#60;br /&#62;
用于服务器的操作系统 Linux, Windows Server 2003/2008, Solaris 10 Windows Server 2003/2008&#60;br /&#62;
专用服务器软件 Flash Media Interactive Server / Flash Media Streaming Server、Apache/IIS、SVN Server Windows Media Service、IIS/Apache、&#60;br /&#62;
Team Foundation Server&#60;br /&#62;
用于开发的操作系统 Linux, Windows,Mac Windows、Mac&#60;br /&#62;
开发工具 Flex Builder, Adobe Creative Suite Visual Studio 2008 (sp1), Expression Studio, Paint.NET（可选） &#60;/p&#62;
&#60;p&#62;播放器装机量&#60;/p&#62;
&#60;p&#62;目前Silverlight装机量很低，不超过2%，这方面Flash占据了绝对优势，这也是为什么目前ISV不愿意选择Silverlight进行开发的原因。&#60;/p&#62;
&#60;p&#62;总结&#60;/p&#62;
&#60;p&#62;就目前（2008年底）而言，Silverlight从技术上讲已经基本成熟，并且可以与Adobe的Flash正面交锋，但由于装机量的原因，仍然有很多厂商不愿意基于Silverlight进行开发，因为不太可能说服自己的客户去安装一个全新的软件，特别是在大型企业，IT主管需要评估安装任何一个软件的风险，特别是安全方面的风险。当然随着时间的推移，越来越多的人会慢慢接纳Silverlight，就像当年.NET刚刚流行的时候，似乎也有很多人并不看好.NET，但如今事实证明了一切。微软是一家很擅长推标准和平台的公司，在这方面Adobe恐怕很难与之抗衡，当然现在就做预言显得太早了些，让我们拭目以待吧！&#60;/p&#62;
&#60;p&#62;本文出自：http://www.cnblogs.com/tonyqus/archive/2008/12/25/1361936.html
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Adobe VS Microsoft"</title>
<link>http://www.mdong.org/bbs/topic.php?id=48#post-52</link>
<pubDate>Tue, 10 Nov 2009 19:11:10 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">52@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;其实这里拿Adobe与Microsoft比有些勉强，因为Flash真正的老东家是Macromedia，只不过被Adobe收购了而已。不管怎么说，既然换了东家，就让我们来看看这个东家对Flash这个“小媳妇”好不好。&#60;/p&#62;
&#60;p&#62;就目前而言，Adobe对Flash还是特别优待的，也投入了大量的研发力量，试图把Adobe原本在图像处理方面的优势应用到Flash中去，特别是这次Flash Player 10的发布，更是大量融入了图形硬件加速技术，从技术上讲这一改进很大程度上弥补了Flash在3D图形渲染领域以及高清影像播放方面的不足。这让我想起当年Adobe收购Macromedia之后提出的战略：&#60;/p&#62;
&#60;p&#62;a. 整合两家公司的产品，剔除重复的部分&#60;/p&#62;
&#60;p&#62;b. 大力推广RIA技术（这也是Adobe收购Macromedia最主要的原因）&#60;/p&#62;
&#60;p&#62;2008年对于Adobe而言似乎是一个很重要的年份，发布的产品接踵而至：Flex 3、AIR 1.0、Flash Player 9的更新版9.0.124、以及刚刚发布的Flash Player 10，无论哪一个都是大手笔，看来她正大张旗鼓地执行当初的战略。从另一方面来看，在这些产品发布的同时，我们也看到了微软的大动作，特别是Flash Player 10的发布最为奥妙，仅比Microsoft的Silverlight 2晚了一天，相信这不是巧合，虽然Adobe不太愿意承认这是被Microsoft所逼。在这一点上似乎Flash阵营也很赞赏Microsoft的做法，因为这是在督促Adobe改进一些现有问题，可以说是微软帮助Adobe成长，帮助她改掉了当初垄断RIA市场时傲慢的臭毛病。所以竞争对于最终用户来说绝对是好事！&#60;/p&#62;
&#60;p&#62;从进入RIA市场的时间来看，Adobe（把Macromedia的那一份算在内）绝对是元老，Flash从1.0到现在也有将近10年了（其实更久些，根据网上的资料显示，Future Splash Animator矢量软件（也就是Flash的前生）是在1995年开发完成的，也就是说距今已有13年了。只不过真正让别人知道并流行起来，确实只有10年左右，所谓十年磨一剑），而微软的Silverlight从1.0开发完成到现在还不超过两年，从这点上讲Micorosoft有好多东西需要向Adobe请教。有趣的是，说到向别人学习的能力，微软绝对可以排进前三甲！纵观微软历史，她收购过很多公司，也从其他公司学到了很多东西（虽然有人认为她抄袭了很多其他公司的东西），所以你不要多想Silverlight前景好不好，只要看看微软的操作系统的流行程度就明白了。大家已经发现最近微软发布的Windows Live Essential软件包中带了Silverlight，这是微软的一步棋，对于微软来说，要扩大Silverlight的部署规模很简单，哪天放到Windows Update列表里就完了，凭借占绝对优势的操作系统占有率，Silverlight可以在短短几天内成为全球部署率最高的RIA web解决方案，这就是微软的实力。&#60;/p&#62;
&#60;p&#62;曾经有个IT圈外的朋友这样和我分析他的理论，我一开始不以为然，但后来想想还是蛮有道理的。他是这么说的：有两家公司是绝对不会死的，一家是微软，一家是IBM，但Oracle可能死掉，为什么呢？因为Oracle没有自己的操作系统。虽然这个观点不一定正确，但是至少说明了一个问题，微软的操作系统比我们想象中的要有用，它对于微软而言是一种宣传工具，举个极端点的例子，我们现在看到迅雷有事没事就在桌面右下角弹小广告，哪天微软也这么搞一把你又能如何？（当然这事基本不会发生，想想这次黑屏事件的反响就不难想象如果微软真的这么搞会有什么后果）。随着Vista的继任者Windows 7的发布，微软将会把更多的东西集成到操作系统中，这当然也包括Silverlight，虽然对于用户而言这只是一个小小的升级附件，但对于软件开发商来说绝对是很诱人的，因为微软间接帮助他们降低了软件的部署成本，这一点对于WPF也是一样的，Windows 7的UI已经有相当一部分就是基于WPF的。&#60;/p&#62;
&#60;p&#62;虽然Adobe这次发布了AIR，标志着Adobe的RIA解决方案正式跨入桌面领域。但从长远看，Adobe如果没有自己的操作系统，就很难得到软件开发商的信任（尽管我们也看到Adobe已经提供了类似于Windows Update的更新解决方案）；另一方面，Adobe的东西进入桌面领域就必须和操作系统打交道，如果哪天微软搞它一下，给他设了一个槛——“我就是不让你用某某接口，看你怎么办”，特别是对于硬件图形加速这一块，这绝对是Adobe的软肋，毕竟硬件加速必须通过驱动程序与显卡打交道。回想起当年Netscape就这么莫名其妙被搞死了，Adobe真的要引以为戒，似乎在一开始所有人都认为IE不可能与Netscape抗衡。&#60;/p&#62;
&#60;p&#62;说句心里话，我并不希望Adobe栽跟头，因为她的存在对于Microsoft来说也是一种督促，这一点的原因我们看看IE6就明白了，在很长一段时间里Microsoft不愿意花大力气更新IE浏览器，所以用户抱怨很大，究其原因就是基本没有竞争对手，直到FireFox这只小狐狸的出现（这次从d2forum拿的贴纸超级可爱）！所以Flash和Silverlight共同存在绝对是好事，对于双方阵营的开发者都有好处，同时也对技术的发展具有推波助澜的作用。&#60;/p&#62;
&#60;p&#62;最后列一下Adobe和Microsoft目前互相竞争的产品：&#60;/p&#62;
&#60;p&#62;Adobe&#60;br /&#62;
 Microsoft&#60;br /&#62;
 批注&#60;/p&#62;
&#60;p&#62;Photoshop Paint.NET（开源工具） 基本无法比较，Paint.NET弱很多，但是是免费的&#60;br /&#62;
Illustrator Expression Design Illustrator似乎要更强些&#60;br /&#62;
Flash Expression Blend&#60;br /&#62;
Flex Builder Visual Studio &#38;#38; Expression Blend Flex Buidler中是既可以做UI也可以做编程的&#60;br /&#62;
AfterEffects Expression Media &#38;#38; Movie Maker AfterEffects貌似专业很多&#60;br /&#62;
Flash Media Server Windows Media Services&#60;br /&#62;
Dreamweaver Expression Web   &#60;/p&#62;
&#60;p&#62;本文出自：http://www.cnblogs.com/tonyqus/archive/2008/12/18/1357238.html
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Silverlight 武器库"</title>
<link>http://www.mdong.org/bbs/topic.php?id=47#post-51</link>
<pubDate>Tue, 10 Nov 2009 19:10:02 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">51@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;最近有好几个网友问我关于Silverlight 2应该安装些什么的问题，所以在本文中提一下这些信息，供大家参考。&#60;/p&#62;
&#60;p&#62;提示：&#60;/p&#62;
&#60;p&#62;a. 以下所有收费软件仅提供介绍连接，如果你想下载盗版或破解版可以去google上搜，这里就不提供链接了&#60;/p&#62;
&#60;p&#62;b. 所有没有写“收费软件”的均可免费下载；所有没有写“可选安装”的都是必须安装的东西&#60;/p&#62;
&#60;p&#62;Silverlight浏览器插件&#60;/p&#62;
&#60;p&#62;Windows、Mac版&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/silverlight/resources/install.aspx&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/silverlight/resources/install.aspx&#60;/a&#62; &#60;/p&#62;
&#60;p&#62;Linux版（第三方提供的Linux版Silverlight，叫Moonlight，可选安装）&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.go-mono.com/moonlight/&#34; rel=&#34;nofollow&#34;&#62;http://www.go-mono.com/moonlight/&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Expression Design 2 （收费软件，建议安装）&#60;/p&#62;
&#60;p&#62;用来做UI设计的工具，用于生成小图形、插图之类的东西，然后导入Blend&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/expression/products/Overview.aspx?key=design&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/expression/products/Overview.aspx?key=design&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Expression Blend 2（收费软件）&#60;/p&#62;
&#60;p&#62;编辑XAML的工具，支持所见即所得，还可以编辑XAML资源文件，把你项目中需要用的Brush、Shape等资源都放进去。&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/expression/products/Overview.aspx?key=blend&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/expression/products/Overview.aspx?key=blend&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Expression Blend 2 Service Pack 1 (SP1)&#60;/p&#62;
&#60;p&#62;如果你要用Blend开发Silverlight 2的应用，必须安装这东西！&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/downloads/details.aspx?FamilyID=eb9b5c48-ba2b-4c39-a1c3-135c60bbbe66&#38;#38;DisplayLang=zh-cn&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/downloads/details.aspx?FamilyID=eb9b5c48-ba2b-4c39-a1c3-135c60bbbe66&#38;#38;DisplayLang=zh-cn&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Expression Encoder 2 （收费软件，可选安装）&#60;/p&#62;
&#60;p&#62;用于录制流媒体的软件&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/expression/products/Overview.aspx?key=encoder&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/expression/products/Overview.aspx?key=encoder&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Expression Media 2 （收费软件，可选安装）&#60;/p&#62;
&#60;p&#62;用于剪辑、编辑媒体文件，如视频、音频等。 &#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/expression/products/Overview.aspx?key=media&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/expression/products/Overview.aspx?key=media&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Expression Web 2 （收费软件，可选安装）&#60;/p&#62;
&#60;p&#62;用于编辑asp.net网页的软件，类似于当年的FrontPage，不过个人觉得还不如直接买Visual Studio 2008&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/expression/products/Overview.aspx?key=web&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/expression/products/Overview.aspx?key=web&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Expression Studio 2（收费软件，可选安装）&#60;/p&#62;
&#60;p&#62;以上5个Expression软件的套装版，貌似比较贵~~&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/expression/products/Overview.aspx?key=studio&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/expression/products/Overview.aspx?key=studio&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Deep Zoom Composer&#60;/p&#62;
&#60;p&#62;用来制作大图片导航页的工具，制作出来的东西类似于电子地图的缩放功能——在查看指定小区域时，图像会重新加载，越变越清晰。&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/downloads/details.aspx?FamilyID=457b17b7-52bf-4bda-87a3-fa8a4673f8bf&#38;#38;DisplayLang=en&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/downloads/details.aspx?FamilyID=457b17b7-52bf-4bda-87a3-fa8a4673f8bf&#38;#38;DisplayLang=en&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Visual Studio 2008（收费软件）&#60;/p&#62;
&#60;p&#62;由于Blend中不能编辑代码文件（如.cs, .vb），所以你得安装Visual Studio 2008作为代码编辑器。&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://msdn.microsoft.com/en-us/vstudio/products/bb931331.aspx&#34; rel=&#34;nofollow&#34;&#62;http://msdn.microsoft.com/en-us/vstudio/products/bb931331.aspx&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;  Microsoft Silverlight 2 SDK &#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/downloads/details.aspx?FamilyID=8d933343-038f-499c-986c-c3c7e87a60b3&#38;#38;DisplayLang=en&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/downloads/details.aspx?FamilyID=8d933343-038f-499c-986c-c3c7e87a60b3&#38;#38;DisplayLang=en&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Silverlight Tools for Visual Studio 2008 SP1&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/downloads/details.aspx?FamilyId=c22d6a7b-546f-4407-8ef6-d60c8ee221ed&#38;#38;displaylang=en&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/downloads/details.aspx?FamilyId=c22d6a7b-546f-4407-8ef6-d60c8ee221ed&#38;#38;displaylang=en&#60;/a&#62;&#60;/p&#62;
&#60;p&#62; Silverlight Tools for Visual Studio 2008文档&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&#38;#38;FamilyID=bce7684a-507b-4fc6-bc99-6933cd690cab&#34; rel=&#34;nofollow&#34;&#62;http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&#38;#38;FamilyID=bce7684a-507b-4fc6-bc99-6933cd690cab&#60;/a&#62;&#60;/p&#62;
&#60;p&#62;  （可选）&#60;/p&#62;
&#60;p&#62;微软开发的一套开源Silverlight控件库，貌似这样下去netadvantage这种品牌要没饭吃了&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://www.codeplex.com/Silverlight&#34; rel=&#34;nofollow&#34;&#62;http://www.codeplex.com/Silverlight&#60;/a&#62; &#60;/p&#62;
&#60;p&#62; Silverlight Streaming Plug-in for Live Writer&#60;/p&#62;
&#60;p&#62;它可以方便地在你的帖子中加入Silverlight&#60;/p&#62;
&#60;p&#62;&#60;a href=&#34;http://gallery.live.com/liveitemdetail.aspx?li=9f952b71-9883-4937-9f28-1e58002bb2ce&#38;#38;pl=8&#38;#38;bt=9&#34; rel=&#34;nofollow&#34;&#62;http://gallery.live.com/liveitemdetail.aspx?li=9f952b71-9883-4937-9f28-1e58002bb2ce&#38;#38;pl=8&#38;#38;bt=9&#60;/a&#62; &#60;/p&#62;
&#60;p&#62; 这里顺便说一句，貌似上面的图标看上去很像Adobe的图形系列软件图标，我估计微软正在设法完善自己的产品线，也就是说有一天它会拥有所有与Adobe进行抗衡的产品，期待这一天的到来，呵呵！当然两家并存也并非坏事，有竞争才有助于产品的改进！&#60;/p&#62;
&#60;p&#62;本文出自：http://www.cnblogs.com/tonyqus/archive/2008/12/14/1354560.html
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "Silverlight 2 的意义"</title>
<link>http://www.mdong.org/bbs/topic.php?id=46#post-50</link>
<pubDate>Tue, 10 Nov 2009 19:09:09 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">50@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;Silverlight 2真的可谓“千呼万唤始出来”，不单单是出得晚了点，更多的是它寄托了太多的东西，很多开发者在“忍受”Silverlight 1.0的同时，也一直期盼着Silverlight 2早日发布，这样它们才能从繁重的客户端代码工作中得到解放，毕竟用.NET编写Silverlight程序还是很爽的！&#60;/p&#62;
&#60;p&#62;从技术意义上讲，Silverlight 2的技术含量很高，因为它是基于DCLR的，这也是它能够支持跨平台的主要原因（虽然目前仅支持Mac），从长远来看微软可能在某个合适的时候支持Linux，但由于这样会违背他一贯推行的方针——排挤Linux，所以短期内恐怕不会看到微软出的Linux版本的Silverlight，当然第三方已经有相关的产品了，即MoonLight。由于DCLR，Silverlight2也正式支持使用任何.NET支持的语言（除了J#）进行编程，包括VB.NET、C#、、IronPython、IronRuby。&#60;/p&#62;
&#60;p&#62;同时Silverlight 2也越来越像他的孪生兄弟WPF，其支持的WPF XAML标签越来越多，而且基本保持一致，这样可以很大程度上缓解学习跟不上发展的局面，微软的速度实在太快了——似乎所有人都有这样的共识，特别是最近几年，微软正以惊人的速度从事着很多领域的开发工作，包括Windows系统、CRM、图形矢量领域、开发工具、虚拟机、安全领域、Web应用领域、即时通讯。尽管微软的战线比任何一家公司拉的都要开，但却没有出现管理混乱的局面，似乎微软找到了曾经被证明不存在的银弹，呵呵。XAML现在已经不仅仅是一种声明式语言，在不久的将来它将成为一种标准，与OOXML一样！越来越多的人会因为Silverlight、WPF、Surface而接触XAML，随着这一标准被不断统一融合，未来的某一天，开发人员基本不用去管这是WPF的XAML还是Silverlight的XAML，也就是说对于程序员而言它将是透明的。&#60;/p&#62;
&#60;p&#62;Silverlight2还对各种形式的网络连接提供支持（类似Flash中的Connection和WebServiceClass），有了这些东西，用户就可以方便地通过网络获得各种所需要的数据，要知道这一支持对于开发基于网络的应用是很有帮助的，可以这么比喻，有了这一功能，Silverlight一下子从发展中国家水平迈入国际领先水平的行列（是不是听上去有点像中国GF的口吻，呵呵），这也是我为什么说Silverlight已整装待发。&#60;/p&#62;
&#60;p&#62;好了，接下来我们来说说Silverlight 2.0的战略和商业意义。&#60;/p&#62;
&#60;p&#62;由于Silverlight 1.0不支持.NET，这会使Silverlight 1.0的开发成本非常高，因为企业必须雇佣一些JavaScript高级人才才能完成一些具有挑战性的开发，并且雇佣过来的还必须精通XAML、Expression系列软件，另外也要熟悉Flash（因为可能需要把原来的Flash应用转为Silverlight版），这样的人据我所知在上海基本以个位数计（谁觉得自己够格，可以支个声，我马上把你卖个好价钱，哈哈），而使用Silverlight 2，JavaScript这一部分的问题得到相当的缓解，当然并不是说不需要，而只有在需要与AJAX融合或者做故障排除时才需要使用JavaScript，所以只需要招聘一个熟悉JavaScript的人足已。说的再直接点，原本企业可能要给12k/月以上工资，现在企业可能只需要给10k/月封顶的工资。&#60;/p&#62;
&#60;p&#62;对于微软而言，Silverlight 2可以算作是一个里程碑（Milestone），它为微软未来5年打开矢量图形市场奠定了扎实基础，并且Silverlight2也已经开始为抢占非PC领域做准备，在这次PDC2008上演示了Silverlight 2 for Mobile版本，这一市场Flash也是刚刚进入不久，很多手机仍然要靠第三方播放器来播放Flash动画，所以从一定意义上讲Silverlight 2已经逐步赶上Flash，只不过Macromedia（Flash的前东家）和Adobe用了10年，而微软只用了2年，这也从一个侧面反映出微软的实力和成熟的软件开发流程。这里我还想适当展开一下，如果大家仔细分析微软近2年的技术走向会发现，微软正在紧密部署非PC领域的产品线和市场，并且我们已经看到了一些产品，如头戴式电脑（貌似后来夭折了）、Tablet PC（平板电脑）、Microsoft Surface（数字茶几）以及Windows Mobile，这些产品都在给我们一个信号，微软正在尽可能多元化发展，以应对未来可能出现的操作系统销量下滑的局面，毕竟微软也越来越感觉到压力，特别是随着Linux的不断成熟，操作系统正在走向开源。不过话又说回来，基本上5年内，Linux无法赶上Windows，并且由于各方利益等的原因，Linux阵营很难团结起来，这就好比过去的山戴王要和国民党军队抗衡，怎么打？当然是团结，GCD聪明就聪明在着，好了不说政治，否则cnblogs要被HX掉的，dudu肯定要杀了我的:p。&#60;/p&#62;
&#60;p&#62;所以从这一点看，大伙可以抓紧学起来了，特别是那些还在象牙塔里学习的学弟学妹们（说实话，我觉得大学生活还是很开心的，想当年~*&#38;#38;·#￥%……—*我就不展开了，省得你们闲我烦，呵呵），未来5年Silverlight和WPF的职位会随着微软对该技术的不断推广以及技术的不断成熟而迅速攀升，我估计少说也能为上海创造5000个工作岗位——现在你应该明白“跟微软混有肉吃”有肉吃这个道理了吧，呵呵。兄弟们，把泡小秘的时间省点下来，多学习学习，我们要学会可持续发展，不学习你就会发觉有一天你的情人成了别人的拼拼，到时候后悔了，可别怪老板少给你钱，只能怪你当初你没抽点时间出来学Silverlight、WPF这样的微软前沿技术。说白了，你老板不赏识你没关系，你可以跳槽，你自己在哪里混可就没人能帮你了。&#60;/p&#62;
&#60;p&#62;目前上海Silverlight方面的职位还很少，可能是因为一方面Silverlight推广力度不够。这点DPE的兄弟要加把劲，budget不够也有不够的方法，比如说可以去街头吆喝——“Silverlight 便宜买啦，10块5斤了阿，走过路过不要错过了阿”，“兄弟，这是微软出口尾单，换别人我不告诉他，便宜点卖给你吧”，哈哈哈~~~，又比如说可以去YouTube上发点夺人眼球的东西，什么“史上最牛的送给mm的生日礼物”，其实是用Silverlight做的超炫动画。另一方面呢，我觉得企业对于微软新技术的信赖度不够，似乎中国的软件企业（包括一些外企）总认为微软的技术不到3.0不能用，但我要问他们的东西3.0之前bug会少，呵呵，我估计这些企业的软件就算到了6.0，bug依然比微软的多，有句话说的人：做人要厚道！别宽己严人。&#60;/p&#62;
&#60;p&#62;本文出自：http://www.cnblogs.com/tonyqus/archive/2008/11/17/1334748.html
&#60;/p&#62;</description>
</item>
<item>
<title>langmuir on "是Silverlight 2还是Silverlight"</title>
<link>http://www.mdong.org/bbs/topic.php?id=45#post-49</link>
<pubDate>Tue, 10 Nov 2009 19:08:17 +0000</pubDate>
<dc:creator>langmuir</dc:creator>
<guid isPermaLink="false">49@http://www.mdong.org/bbs/</guid>
<description>&#60;p&#62;上周永京兄在回复中指出了一个问题——应该叫Silverlight 2而不是Silverlight 2.0，一开始我并没有注意到这一点，直到永京兄给我看了一篇帖子：http://michaelsync.net/2008/04/15/tip-current-version-of-silverlight-is-2-not-20&#60;/p&#62;
&#60;p&#62;虽然这帖子很短，但可谓一语道破梦中人！&#60;/p&#62;
&#60;p&#62;根据这篇贴子的解释，由于Silverlight并非独立产品，它与Expression系列软件有着很密切的联系，特别是Expression Blend。由于Silverlight 2的发布日期远远晚于Expression Blend 2的开发日期，因此Expression Blend仅支持Silverlight 1.0。但是Expression团队又不希望直到Expression Blend 3再支持Silverlight 2，这是因为Silverlight 2对于微软有很懂大的意义，总不能让用户等到编辑工具出来再开始使用Silverlight 2吧，所以就有了Blend 2.5。其实严格意义上说，Blend2.5是一个过渡版本，仅仅是为了让Blend在3.0版本之前支持Silverlight 2而准备。个人建议如果公司有采购计划，还是等3.0出来再买正版吧，之前先用用Blend 2.5 CTP或者干脆用下载破解版。（Microsoft销售团队的兄弟看到这贴可别骂我:p）&#60;/p&#62;
&#60;p&#62;说到Blend的版本，Blend 2.5和Blend 3其实是同时进行开发的，而不是一前一后开发的，都是基于Blend 2，这一点很特别，通常情况下很少见！且对于项目管理是一个很大的考验，我相信微软肯定派了1-2个Senior PM负责Blend这个项目。顺便说一句，别认为微软PM都很空，没有他们，那些dev恐怕拼命加班也不能按时完成任务，虽然有些dev也认为PM比自己空。管理真的是很神奇的东西，好的管理能减少加班数量，但完成任务的效率不减，这就是水平！华为应该好好向人家学习学习——把女人当男人用、男人当畜牲用的公司！汗呢~~ &#60;/p&#62;
&#60;p&#62;我个人认为，Silverlight 2之所以不叫Silverlight 2.0的原因主要是为了与Blend保持一致，不要一会儿2.0，一会儿2.5，让用户摸不着头脑，毕竟这对于很多东西会产生影响，比如说软件开发公司采购Blend软件，采购完Blend 2结果发觉不支持Silverlight 2，这时候再投诉微软恐怕就晚了！照这么推理的话，Blend 3的时候估计就能支持Silverlight 3，可能会再Blend 3相对较后面的一个版本支持。这一点Adobe做的还是不错的，Flash player的版本基本与Flash编辑器保持一致（除了Flash MX 2004），估计微软开发团队也意识到了这一点，所以向前辈学习了一把 :)。&#60;/p&#62;
&#60;p&#62;所以请大家在以后提及Silverlight的时候，能够分清版本的叫法，如Silverlight 1.0、Silverlight 2，不知道Silverlight 3发布的时候微软又会有啥花样，拭目以待。&#60;/p&#62;
&#60;p&#62;本文出自：http://www.cnblogs.com/tonyqus/archive/2008/11/08/1329432.html
&#60;/p&#62;</description>
</item>

</channel>
</rss>
