3650进阶篇之四----Symbian开发入门

3650使用的Symbian系统是以Nokai为首的各手机厂商合伙开发的一个操作系统,主要用于高端的智能手机 。其开发语言为C,可以使用Microsoft Visual C6.0作为集成化的开发环境,看来虽然Symbian的目标是跟微软的SmartPhone较劲,在采取的手段和方法上却也是不拘一格,微软更是暗暗叫苦,谁让当时vc6设计的这么开放,结果被敌人拿去做武器了 。本文主要针对的是Symbian开发入门,所以应该是非常简单的事,因为毕竟Symbian的开发语言是C,并不会因为是用于手机的操作系统就复杂了多少,就象很多人一直挂在嘴边的J2ME也毕竟是Java语言,并不会因为用在手机上就高深了多少一样 。
因为是用于手机的操作系统,所以我们研究Symbian的话,研究Nokia的60系列平台是一个很不错的选择,Nokia根据手机的屏幕大小和价格高低把手机分成了多个系列,60系列目前有两款手机:7650和3650 。60系列采用Symbian os 6.1,然后又根据手机屏幕的特点对UI做了一些修改,这个被修改了的Symbian就被称为Nokia的60系列平台 。所以接下来的内容对7650同样有用 。

入门的第一步就是要下载S60的SDK,可以从Nokia的开发论坛上下载:http://www.asia.forum.nokia.com/chinese/sch/main/series60.html 。

看Nokia网站上最新的是1.0,不过下面又有个0.9中文版,所以自然要下载这个0.9版了 。100多兆吧,不想下的话,可以跟Nokia要光盘,估计他们应该很高兴给 。这个0.9中文版的模拟器是中文版的,而且有支持GBK和UNICODE转换的类,不知道1.0的英文版有没有 。
下载完了就是安装,选一个目录装就是了,不过最好装在C盘上 。可能是考虑到Windows平台和Unix平台都能用的缘故,这套SDK在处理盘符和目录时比较弱智,我当时SDK装到C盘,自己的程序放到D盘用vc6生成新项目就有问题,经观察是盘符的问题 。所以保险起见的话,最好装在C盘,有兴趣的可以替Nokia测试一下 。另外,还需要Java的运行库和Perl,SDK里也都带了,不过他自带的Perl在我的XP下装有问题,我下载了一个最新的ActivePerl才最终算是安装完毕 。从SDK的安装来看,这帮搞手机的搞软件好像确实不太专业,呵呵 。
刚才说了,我的Symbian安装到了C盘,在C盘的Symbian目录下,有一个6.1的目录,6.1目录下有两个目录:Series60和Shared 。还好,从名字上能看出大体的意思 。请一定注意Series60目录下的Epoc32BUILD目录,因为这个目录以后要反复的用到 。
接下来的任务就是要编译一下HelloWorld,然后再运行一下看看了 。首先得确认你的系统装VC6了(最好能装sp3以上,否则将来用到vc6时会报警),而且得把C:Program FilesMicrosoft Visual StudioVC98Bin放到你的PATH里,主要是用nmake.exe 。所以如果你有nmake的话,不装vc6也可以看helloworld 。找到helloword例子的目录,在我这里是C:Symbian6.1Series60Series60ExHelloWorldgroupSymbian里,一个Project通常是按inc,src,group等目录组织,group目录里通常放的是项目文件,所以编译时要先到这里 。用命令提示符模式进入刚才说的那个目录下,然后执行 bldmake bldfiles这个命令会在group目录下生成一个abld.bat的批处理文件,并且会在C:Symbian6.1Series60Epoc32BUILD下生成C:Symbian6.1Series60Epoc32BUILDSYMBIAN6.1SERIES60SERIES60EXHELLOWORLDGROUP这个深的一个目录,并在最底层目录下生成一堆.make文件 。(实在理解不了为什么要这么搞?难道因为他们是生产手机的?)虽然它生成了这么多东西,但是我们不要管,继续输入abld build wins udeb这个命令会编译我们的程序,最后在 C:Symbian6.1Series60Epoc32ReleasewinsUDEB目录下生成我们的helloworld,然后我们可以从开始菜单里运行模拟器的debug版,打开other目录就可以运行helloworld了 。

推荐阅读