发Series 60项目的时候你可以使用的各种选项总结在表1-1中。Symbian、Nokia和开发工具厂商Borland、Metrowerks正在提供更多的选择。但是,好像微软开发工具,尽管它目前可行并被广泛地使用,在可预见的未来无法受到支持。

  在微软、Borland和Metrowerks的多种IDE的功能之间目前有一些值得注意的差别。对后两种开发环境的增强正在进行之中。 EMCC软件有限公司把所有的三种厂商的IDE都作为自己开发活动的基础。我们也每天使用命令行工具——并不是因为我们原意,而是由于我们目前只能这样做。这是为目标设备建立程序和自动化通宵编译过程的基本操作。C++BuilderX和CodeWarrior IDE现在可以用于为目标设备建立程序——但并不是所有的基本的建立操作都受到全部IDE的支持。

  在写作本文的时候,开发任何Series 60项目的最容易的和最通用的出发点是定义一对bld.inf和.mmp项目文件。在EMCC软件公司,这些文件用于任何特定IDE项目文件的生成过程,并且可以在任何需要的命令行建立过程中使用。这种方法也是Symbian和Nokia在它们的SDK和文档中提供的每个简单的项目目前所采用的方法。在目前情况不断变化的情况下使用专用的IDE是不可行的。各种情况很快就会发生变化,而这正式Symbian OS和Series 60开发人员的真实生活。

在本文的剩余部分中,我们使用HelloWorld示例项目来演示Series 60模拟器的开发、调试和部署过程的所有步骤。

  我们也提供了示例应用程序需要的其它的所有文件——例如头文件(.h)、源文件(.cpp)和用户界面资源文件(.rss)。

  你可以使用Series 60模拟器测试该应用程序,或者在某个IDE中启动它,或者从命令行提示符上运行它。但是,在模拟器上调试应用程序必须在IDE内部进行。

  在模拟器上开发、运行、测试和调试应用程序之后,一般你都希望在目标设备上建立和运行该程序。因此我们还演示了如何为目标设备建立示例应用程序,如何部署它,并在目标Series 60硬件上运行它。

  Series 60模拟器

  Series 60应用程序的开发、调试和最初的测试一般都在PC模拟器上进行,该模拟器提供了一种基于微软Windows的Series 60设备的实现。在大多数情形中你会发现基于模拟器的开发过程与在真实的设备上运行的应用程序的操作是非常相似的;因此你的主要工作在硬件设备可以使用之前就可以进行了。模拟器的精确界面与提供的图形会有很大的不同,它依赖于你使用的目标平台、Series 60的版本和所选择的IDE。此外,还可能添加或删除一些按钮或其它的操作元素以模拟现实的设备的配置。同样,模拟器上可以使用的应用程序也依赖于平台的版本和设备厂商的选择。

  模拟器和真实的设备之间有些差异无法避免。真实的Series 60设备可能带有硬件附件(例如照相头)和其它特性(例如后台振动)。因此有时候硬件对于开发和测试是必要的。此外,基于PC的模拟器不能精确地模拟精确计时、应用程序性能和内存管理的问题。

  对于基于PC的开发,编辑/编译/建立周期是基于微软Windows开发工具集的。但是,与依赖Win32或MFC类库进行链接和建立不同,开发者将依赖于Series 60 SDK安装的头文件和PC格式的类库来进行链接和建立。作为结果的Windows格式的二进制可执行文件就可以在以PC的模拟器上运行了。

  在开发过程中,特定IDE的项目文件管理着所有的链接和建立细节信息。它同时确保了建立操作的所有输出和其它需要的资源文件(例如应用程序资源文件)都被放到了适当的位置以供在模拟器环境下进行运行和调试。

  根据图1-2,Series 60显示屏逻辑上被分成三个区域:状态块、主块和控制块。

图1-2. Series 60模拟器

  状态块是屏幕顶部的刻度条(在模拟器上是蓝色的)加上它上面的区域。主块是屏幕中间的,位于状态条和屏幕底部之间的软按键(soft key)标签之间的部分。控制块是紧接着主快,包含了软按键标签。

  状态块可以显示当前应用程序的信息和设备的一些普通信息(例如信号强度和电池情况)。它在大多数情形中是可视的,但是有时候是隐藏的。例如很多游戏就使用了整个屏幕。

  主块是屏幕的主要区域,应用程序可以在这儿显示数据。典型情况下,这个区域作为客户端矩形引用,它通常被应用程序的数据显示所填满。

  控制块占据了屏幕的下部,它显示了与两个软按键相关的标签,并根据需要显示滚动条。与状态块类似,控制块有时候也可以隐藏。在这种情况下,在 Series 60中样式指导假定用户可以使用Options菜单(左边的软按键的默认的标签),即使它是不可视的(请参考Series 60 SDK文档提供的“Nokia Series 60游戏UI样式指导”)。

  控制块下面的两个按钮分别是左和右软按键,用于选择当前关联的Options菜单或标记的操作。四路导航按键可以上下左右滚动,如果按下(点击)中间就可以进行选择。

  你可以通过PC鼠标或光标按键在显示屏上的对象之间进行导航,从而与模拟器交互操作。我们可以直接地使用鼠标点击来选择文件夹或其它显示的对象,而不需要使用四路导航按键(仅仅在模拟器上可行)。我们可以使用PC键盘进行数据输入,或者通过点击模拟器上的12位键区来输入。因此与模拟器的交互操作是类似于、但并不是完全与使用真实的Series 60一样的——在真实的设备上没有笔输入,因此所有的移动和选择都是通过光标导航完成的。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10294527/viewspace-126052/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10294527/viewspace-126052/

Symbian和C++ SDK入门之开发工具(转)相关推荐

  1. 中国移动将向广大开发者开放了SDK/API等开发工具

    7月30日14时消息,中国移动自有操作系统OPhone OS正式开放开发者社区注册,将向广大开发者开放了SDK/API等开发工具. OPhone OS (Open Mobile Phone Opera ...

  2. r shiny app的学习和使用,这个我认为是作为大学生最适合的入门网页开发工具!!!

    最简单的rshinyapp的结构 一个library 一个ui 一个server 一个把ui和server结合到一起组成rshiny app的代码 r语言的最大的特点是直观 就很适合学生教育 忽然发现 ...

  3. go语言01SDK、GoLand开发工具下载和安装

    Go语言学习01:SDK.GoLand开发工具下载和安装,及测试第一个程序:输出hello world 半夜凌晨写的笔记,如果对你有帮助,加个关注或点赞哈感谢,吼吼~ Go语言的学习,开始安装软件就遇 ...

  4. 好程序员HTML5大前端分享常用开发工具大集合

    HTML5作为当前最为流行的编程语言,广为适用.语言的使用人数急剧增长,更多地开发人员使用这种语言来创建各种内容并放到互联网上.随着每一个新版本的发布,HTML通过更好的功能和技术渐渐占据了制高点.接 ...

  5. html5网页制作代码_好程序员HTML5大前端常用开发工具大集合

    好程序员HTML5大前端分享常用开发工具大集合HTML5作为当前最为流行的编程语言,广为适用.语言的使用人数急剧增长,更多地开发人员使用这种语言来创建各种内容并放到互联网上.随着每一个新版本的发布,H ...

  6. 可以作为html5页面开发工具的有,HTML5开发工具有哪些

    HTML5开发工具有哪些 HTML5 发展越来越受到重视,随着各大浏览器对 HTML5 技术支持的不断完善以及 HTML5 技术的不断成熟,未来 HTML5 必将改变我们创建 Web 应用程序的方式. ...

  7. 常用Java开发工具

    常用Java开发工具 常用Java开发工具 一.eclipse使用2分钟入门 二.[下载](http://www.eclipse.org/downloads/eclipse-packages/)和安装 ...

  8. 推荐10款非常优秀的 HTML5 开发工具

    HTML5 发展如火如荼,随着各大浏览器对 HTML5 技术支持的不断完善以及 HTML5 技术的不断成熟,未来 HTML5 必将改变我们创建 Web 应用程序的方式.今天这篇文章向大家推荐10款优秀 ...

  9. 前端工程师高效H5开发工具,强力推荐这12款!

    html5 语言的出世也受到广大开发者们的喜爱,HTML5被看做是 web开发 者创建流行web应用的利器. HTML5的诞生还让人们重新审视浏览器专用多媒体插件的未来,如 Adobe 的 Flash ...

最新文章

  1. python 乱码转码_Python解决乱码问题
  2. Java黑皮书课后题第7章:**7.23(游戏:储物柜难题)一个学校有100个储物柜和100个学生。所有的储物柜在上学的第一天都是关着的。…在所有学生都经过教学楼并且改变柜子之后,哪些柜子是开着的?
  3. Microsoft SQL Server 2005 查询分页
  4. Promise处理前端异步事件
  5. 前端性能优化知识,包括css和js
  6. SEO按天关键词计费排名查询系统源码
  7. SpringBoot集成JWT 实现接口权限认证
  8. 数据安全产品与服务观察
  9. python关键词排名批量查排名_李亚涛:python批量查询关键词百度手机与PC排名
  10. VScode嵌入式开发之入门教程
  11. 如何训练神经网络的参数?,神经网络的参数计算
  12. [论文分享] Stegozoa: Enhancing WebRTC Covert Channels with Video Steganography for Internet Censorship
  13. 【重装系统】Ubuntu系统重装为windows10
  14. MATLAB二维绘图(二)向图中添加标题,坐标轴,图标和文字信息
  15. Android动画之AnimatorSet联合动画用法
  16. 这是我们公司总结的一些关于中文乱码问题的一些解决方案和经验和大家分享!
  17. 中国人工智能学会公布首批会士名单,共计53名产业领军人物当选
  18. 基于聚类(Kmeans)算法实现客户价值分析系统(电信运营商)
  19. PAT (Advanced Level) Practice 1053 Path of Equal Weight (30 分)
  20. BGR到CIELab的颜色空间转换

热门文章

  1. 《机器学习:实用案例解析》,读书笔记
  2. ElasticSearch第三讲 ES-docker-Compose集群部署证书认证
  3. SM3密码算法 - Python实现
  4. 蜂疗学会换届大会在中国北京隆重召开
  5. 成功的企业自然有门道,观摩学习一下
  6. 计算机无法代替的工作有哪些,人工智能代替不了哪些行业?一起来看看!
  7. 2020牛客暑期多校训练营(第五场)题解
  8. 【开关电源RC吸收电路matlab simulink仿真】
  9. 机器学习必备------手把手教你安装sklearn包
  10. Android应用发送短信的实现