原文地址
(http://blog.csdn.net/ydfok/archive/2007/07/11/1685256.aspx)
今天下午下载了S60 3rd Edition SDK 仔细看了下sdk.把自己的一点认识跟大家分享一下.
QUOTE:
首先看看S60 3.0改变了什么:
1. S60 3.0的权限分为两大类:系统权限和用户权限。权限是针对资源访问的,其实大多数系统和用户资源的位置是公开的,只是并非所有资源都能访问或者说并非所有资源都想让用户通过应用去访问. 通过提供基本的安全通信协议.平台安全性也可以支持提供数据保密性.完整性和鉴权.它还支持通过使用数字签名对可安装软件进行鉴权
2.新版S60 3rd Edition增强了多媒体及企业应用功能.大彩色屏幕(176x208标准、240x320 QVGA、352x416双分辨率)和各种输入键(两个软键、五向导航键以及一些专用键).单手使用和大彩色屏幕的原则也使得应用开发人员能够展现具有吸引力的内容并提供简便的导航。除了传统的176x208纵向布局外,横向布局也支持双分辨率(352x416)和QVGA (240x320)模式
3.S60 3rd Edition SVG光栅化(rasterizing)引擎支持SVG Tiny 1.1标准,还支持直线和填充不透明度及渐变色.
QUOTE:
关于第一个权限问题.NOKIA论坛说程序和用户将被禁止访问文件系统.在真机平台上下列文件夹没有权限是不能访问的
/sys/bin/文件夹-包括程序的可执行文件(不能访问)
/private/文件夹-包括程序的一些数据(不能访问)
/private/<SID>-这里SID是一个程序ID号
/resource/文件夹-包含的是共享文件
让我们一起看看SDK里有什么内容:
QUOTE:
Z盘:分为
1. ipdatatest 包含一些配置文件
2. private 文件夹里面很多类似 101f4cd5 101f6cfe这样的文件夹.里面包含 backup_registration.xml.commondsy.ini之类的配置文件
3.resource 里面是共享的文件.resource 根目录有很多aknnotpi.rsc这样的资源文件.也有很多apps.bootdata.fep.fonts.messaging.xml这些大家熟悉的文件夹.安装程序后一些公共的文件就放在这里
4.smoketest 里面是一些配置文件
5.sys包含bin和data文件夹.bin/文件夹有程序的可执行文件和资源文件RSC或链接库等(不能访问). data文件夹里有一些数据文件
6.system文件夹又包含.apps.data.install.programs.sounds等文件夹.这些文件夹跟现在的文件夹的内容差不多.没有什么改变
有兄弟可能会问.为什么resource 和system都有apps.data等文件夹.这里就体现了S60 3.0的权限问题.一个程序只能访问自己的文件夹而不能访问其他应用程序文件夹.resource 文件夹做为共享文件夹.存放已安装程序的一些链接库等.
QUOTE:
S60 3.0应用程序最大的改变是加入了数字签名对应用程序进行授权.为什么要这样做.NOKIA考虑到安全性的问题.必须经过数字签名.这点跟SP系统上加入数字签名差不多.从概念上来说.是在这程序当中加了一道锁.只有经过签名验证的应用程序.才能打开这道锁.才能运行手机上.如果应用程序被修改过.例如汉化或者破解.或者使用了一些未经签名许可的敏感的API.应用程序就不能在手机上执行.在使用安装应用包上.可以多次使用数字签名.如果不修改这个内容又想通过数字认证鉴权.达到破解目的.这点在现在来说具有一定困难.
S60 3.0的应用程序变成了EXE.打包后的文件也变成了SISX.即是从以前的SIS转变到SISX.APP转变到EXE.那么在编写程序和打包方面又有什么不同呢.具体的改变又有那些呢.
QUOTE:
1.首先应用程序入口点改变了.
2.S60 BLD.INF 工程文件的改变.
3.MMP文件的改变
4.应用程序 RSS 资源文件的改变
5.添加了应用程序注册文件
6.增强了ICON的编译.加入了第三版的MIF文件.同时也支持旧版的MBM文件
7.打包时增加了数字认证
有了这些改变后.S60 3.0系统的应用程序还支不支持SIS文件格式呢?从论坛现有的S6 3.0平台的文件来看.S60 3.0平台是支持SIS格式的.其打包依旧通过PKG文件.下面来分析下S60 3.0 自带helloworld的PKG文件
QUOTE:
; HelloWorldBasic_armv5.pkgPKG文件名
;
;Language - standard language definitions
&EN定义语言文件
; standard SIS file header
#{"HelloWorldBasic"},(0xA000017F),1,0,0软件名
;Localised Vendor name
%{"Vendor-EN"}
;Unique Vendor name
:"Vendor"
;Supports Series 60 v 3.0
[0x101F7961], 0, 0, 0, {"Series60ProductID"}产品ID和支持机型
;Files to install程序安装文件
"..\..\..\epoc32\release\armv5\urel\HelloWorldBasic.exe" -"!:\sys\bin\HelloWorldBasic.exe"
"..\..\..\epoc32\data\z\resource\apps\HelloWorldBasic.rsc" -"!:\resource\apps\HelloWorldBasic.rsc"
"..\..\..\epoc32\data\z\private\10003a3f\import\apps\HelloWorldBasic_reg.rsc" -"!:\private\10003a3f\import\apps\HelloWorldBasic_reg.rsc"
"..\..\..\epoc32\data\z\resource\apps\helloworldbasic_aif.mif" -"!:\resource\apps\helloworldbasic_aif.mif"
"..\..\..\epoc32\winscw\c\private\A000017F\hello.txt" -"!:\private\A000017F\hello.txt"
;required for application to be covered by backup/restore facility S60 3.0l多了这个备份和注册文件
"backup_registration.xml" -"!:\private\A000017F\backup_registration.xml"
通过分析上面的PKG文件我们不难发现.
1.程序安装后的主目录从现在的system\app\*.程序名变成了\sys\bin文件夹.二进制文件位于\sys\bin目录中
2.S60 3.0依旧支持RSC资源文件.
3.A000017F\hello.txt为程序ID号.
4.图标名称也由现在的*.AIF变成了×_aif.mif
5.并且多了一个应用程序注册文件backup_registration.xml
在创建SISX文件前我们需要获取R&D证书以便为您的应用签名.
第一个方法是购买一个VeriSign ACS Publisher ID..获得Developer Access Certificate
第二个方法是创建一个私钥和自签名证书 Makekeys 工具可用于创建私钥和自签名证书.工具我会在下面提供
那么我们来看一下.SIS文件怎么加入数字签证变成.先把上面的PKG文件打包成SIS文件后再运行signsis命令并将R&D密钥和证书信息作为参数输入
MAKEKEYS创建私钥和自签名证书命令:
makekeys -cert -dname "CN=Michael OR=Ltd CO=CN" MyApp.key MyApp.cer
用signsis签署命令
SignSIS InternetEmail_v30_gcce.sis InternetEmail_v30_gcce.sis DevCert.cer Access.key 3G365KEN
DevCert代表目标设备.Access Key代表认证的私钥.3G365KEN则是认证私钥文件的密码
那么S60 3.0 平台除了这些变化外还有什么变化.
QUOTE:
最明显的变化就是分辨率的变化.S60 3.0有176 x 208像素.208 x 176像素.240 x 320像素
.320 x 240像素.352 x 416像素.416 x 352像素.在模拟器下大家可看到SDK对各种分辨率的支持.据大平洋某篇评测说以后的软件将根据分辨率自动调整.相信以后的软件会拥有越来越好的兼容性.
补充一下.以后的汉化.破解会不会更困难.我不会破解只说下今天下午对SDK内自带的RSC的看法.
QUOTE:
通过图片可以看到现在的汉化软件完全兼容第三版的资源.可进行修改等.
posted on 2010-02-25 09:40
漂漂 阅读(561)
评论(0) 编辑 收藏 引用 所属分类:
symbian开发