×
Namespaces

Variants
Actions

从S60 5th移植程序到Symbian^3

From Nokia Developer Wiki
Jump to: navigation, search
Article Metadata

兼容于
文章
Levin_Wei 在 25 May 2010 创建
最后由 hamishwillee 在 16 Feb 2012 编辑


Symbian^3平台N8手机

本文中将介绍从S60 5th移植程序到Symbian^3平台上的时候,需要修改的地方和需要注意的问题。随着系统的不断完善,我会以Q/A的方式来维护该文章,如果开发者也发现了不同的问题,也希望共同维护该文章。

Contents

MMP文件中的修改

Q: MMP文件中需要什么样的修改?
A: 由于资源的构造代码有了变化,所以在MMP文件中要增加代码:

APP_LAYER_SYSTEMINCLUDE

Q: 这行代码中 APP_LAYER_SYSTEMINCLUDE 是一个宏定义,那么这个宏定义具体是什么内容呢?
A: 这个宏定义展开后的代码是:

SYSTEMINCLUDE    \epoc32\include\mw
SYSTEMINCLUDE \epoc32\include\app
SYSTEMINCLUDE \epoc32\include\platform
SYSTEMINCLUDE \epoc32\include\platform\app
SYSTEMINCLUDE \epoc32\include\platform\mw

也就是说如果将宏定义APP_LAYER_SYSTEMINCLUDE改成上面的代码,也是完全可以的。

支持Single Tap

Q: 什么是Single Tap?
A: 在S60 5th版本中介绍了,为了兼容之前已经存在的S60 3.X应用,在S60 5th版本中支持double-click。double-click意思是第一次的click使得UI获得焦点,然后再一个click激活该事件。
那么在Symbian^3中,支持了Single Tap来提升可用性,Single Tap中没有焦点的概念,第一次的click就会激活该UI事件。
Single tap提升了触摸的互动效果。
Q: 那么如何修改程序来支持Single Tap?
A: 参考该链接:Single tap on symbian^3

Symbian^3平台UID

Q: Symbian^3系统升级了,那么是不是平台的UID也有变化?
A: 是的,如果之前的程序在pkg文件中不修改平台UID,在安装的过程中会有提示。
你也可以对pkg文件中的平台UID进行修改:

[0x20022E6D], 0, 0, 0, {"Series60ProductID"}

如果你想你的应用在多平台上都可以安装,那么一下的平台UID供参考。 平台及设备UID

;Supports S60 3.0
[0x101F7961], 0, 0, 0, {"Series60ProductID"}
 
;Supports S60 5th Edition
[0x1028315F], 0, 0, 0, {"Series60ProductID"}
 
;Supports Symbian^3
[0x20022E6D], 0, 0, 0, {"Series60ProductID"}

Display Mode的改变

Q:Symbian系统是否改变了默认的display mode?如果有在程序中要怎么修改?
A:Symbian C++的程序要增加对EColor16MA和EColor16MAP的处理,具体内容参考链接:Display mode with alpha channel on Symbian devices

对S60 5th应用是否需要重新编译和签名

Q:在移植的时候,S60 5th的应用需要重新编译吗?S60 5th的应用需要重新签名吗?
A:大部分S60 5th的应用可以直接在Symbian^3手机上进行安装使用,不需要重新编译和签名。除了以下几种情况:
1.为了提升用户体验,应用向使用Single Tap,那么需要按照上面Single Tap的链接来修改程序。
2.在Symbian^3中有些API被移除、修改(该内容会在之后公开)了,那么需要修改代码,并且重新编译。
3.如果需要重新编译的时候,原来的代码在Symbian^3下编译不过的,需要修改MMP文件,本文中上面已经说明。
4.如果单单是为了修改平台UID是没有必要的,该问题不会对安装使用应用造成而且影响。
对于签名问题,由于在Symbian^3中的签名和之前的没有变化,所以单说签名的话,是不需要修改的。

在Symbian^3上开发Qt应用

Q:在Symbian^3上开发Qt应用需要Symbian签名吗?
A:实质上,Qt应用在Symbian平台上也是Symbian应用。所有的Qt应用都是需要进行Symbian签名的。

This page was last modified on 16 February 2012, at 07:34.
339 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×