转到正文

iT人 – theiter

关注IT技术,研究移动开发技术,记录IT人的生活

存档

分类: Symbian

今晚在整理文档的时候发现N久之前写的一个创建symbian工程的脚本,分享出来吧!希望能对大家的开发有点帮助。这组脚本主要是通过windows cmd创建支持2nd和3rd版本的各种工程文件。

可以直接调用Create*.bat生成对应的项目工程

目录结构:
    BuildTools            —-生成工程文件后编译工程的脚本
        build*.bat
    res                            —-生成工程的默认资源文件
        *.bmp
        *.svg                   
    Create*.bat            —-直接调用生工程的脚本
    v*.bat                    —-供Create*.bat调用的脚本

 

点击这里下载CreateS60Prj (92)

详细的使用请参考readme.txt!

今天媒体纷纷报道,微软推出第一款Android平台软件(Microsoft Tag Reader)。先看看媒体的报道:

据国外媒体今日报道,微软面向Android平台发布了首个手机应用Tag。

该应用此前已经推出了Windows Mobile和iPhone(手机上网)等版本,它可以将用户的
手机变成一个条形码扫描器,通过摄像头来解读2D条形码信息。但Android用户此前已经可以通过Barcode Reader和谷歌Goggles来扫描条形码信息。

业内人士认为,考虑到微软与谷歌在手机操作系统及其他领域的竞争关系,微软针对Android平台发布Tag的确有些出人意料。

作为两家在智能手机操作系统上有直接竞争关系的公司,微软推出该软件确实会引起广泛的关注。但是如果仔细研究Microsoft Tag服务和之前发布的相关软件就很容易理解了。

首先,微软之前已经发布的多个移动平台的Microsoft Tag reader软件,包括Symbian,WindowMobile,iPhone,BlackBerry等等。

那么,Microsoft Tag服务是什么呢?

Microsoft Tag技术允许用户把手机当成“移动条形码阅读器”来使用,用户只要将手机摄像头对准条形码,然后拍照,这时手机中的Tag应用就会对条码所含信息进行解释。Microsoft Tag不仅仅具备QRCode相关的能力,更重要的是它基于一种叫做“高容量彩色条码”(HCCBs = High Capacity Color Barcode)的技术,而这个HCCBs是由Microsoft Research研究出来滴!Microsoft Tag保存了信息的唯一编号!这个唯一编号对应的原始信息则保存在微软的服务器上。这样一来,就可以保存非常多的信息,而且可以统计到每一个Tag的使用情况。非常适合用于出版物、电子产品等等场合(其实就是一种二维条码,微软自己二维条码)。

读到这里大家可能就已经明白了,原来微软的重点是在他们的Microsoft Tag服务,支持越多的平台,对其Microsoft Tag服务的推广和应用当然越有利。

虽然到目前为止微软的Microsoft Tag服务还没有明确的商业模式,但是基于移动互联网的条码搜索等业务应该是未来移动应用的一个方向,目前包括谷歌公司在内的其他公司都在积极研究移动设备读取条形码这项技术(Google shopper for Android)。

Symbian Foundation表示,从2010年2月4号起,Symbian将开源其绝大部分软件,用户将可免费下载。

Symbian Foundation基金会创建于2008年,是最大的Symbian系列软件制造者,现已被手机制造商诺基亚收购。

虽然目前Symbian软件全球有超过3.3亿的用户,但在技术和市场份额上面临来自苹果iPhone和谷歌Android的强力竞争,因此诺基亚决定开源并免费提供Symbian OS,此举明显是为提高其智能手机市场占有率、影响力和使用率。

这种通过免费来推广使用的做法在IT科技行业并不少见。谷歌的Android就是免费的。

Symbian Foundation执行董事Lee Williams表示,目前Symbian操作系统仍占统治地位,而从现在开始,大部分开发人员将因此可以做的更多。

iPhone火了;GPhone来了;WM计划WM7了;Symbian也慢慢开源了……

移动平台越来越热闹,竞争也越来越激烈。但是这些对于消费者来说总是好的,我们将会用到更多元化的产品。对开发者来说也是好事,可选择的平台也越来越多。期待在移动开发领域有更广阔的空间!!

另外,有兴趣的朋友可以到Symbian开发者网站(http://developer.symbian.org)下载相关的源码,那里也有很多其他代码,或许你感兴趣。

如果程序中需要配置文件(如保存进度,声音等)那可以使用ini文件来处理,同MFC一样也有专门处理配置文件的API,这就是OpenIniFileLC(RFs& aFs)。

首要的一条,你的程度要支持ini文件,那就要重载这个CEikApplication的成员函数,否则程序执行起来会报错,而重载时只要如下语句即可:

CDictionaryStore* CMyApp::OpenIniFileLC(RFs& aFs) const
{
 return CEikApplication::OpenIniFileLC(aFs);
}

这样的话,程序可以在你启动时自动的创建一个ini——如果检测到没有的情况下。而这个ini一般是创建在C:\System\App\MyApp目录下的,注意即使用户选择安装在E盘,那还是会把ini安装在系统盘上,SDK说明这个默认盘符是放在KIniFileDrive里,但我还没有找到办法如何去修改它,如果你知道了告诉我一声哦:)

一般配制文件要供全局使用,可能要跨越多个view,因此我们把它的操作及数据定义在UI级别,在MyAppUi的ConstructL()函数中有如下语句:

//处理基本的数据

delete iMyConfig;
iMyConfig = CMyConfigData::NewL();   CDictionaryStore* store = Application()->OpenIniFileLC(iCoeEnv->FsSession());
if (store->IsPresentL(KUidKey))
{
 LoadIniFile(store);
}
else
{
 iMyConfig->SetDefault();
 SaveIniFile(store);
}
CleanupStack::PopAndDestroy();
//--结束处理   void CMyAppUi::SaveIniFile(CDictionaryStore* aStore)
{
 RDictionaryWriteStream out;
 out.AssignLC(*aStore, KUidKey);
 out << *iMyConfig;
 out.CommitL();
 CleanupStack::PopAndDestroy();
 aStore->CommitL();
}   void CAknExSettingListAppUi::LoadIniFile(CDictionaryStore* aStore)
{
 RDictionaryReadStream in;
 in.OpenLC(*aStore, KUidKey);
 in >> *iMyConfig;
 CleanupStack::PopAndDestroy();
}

当然具体的CMyConfigData里还要有一些相应的导入导出处理,这样才完美:)

有时候我们还需要在程序中处理一下配置的保存,那我们可以使用如下代码(在view中):

CDictionaryStore *IniFile = AppUi()->Application()->OpenIniFileLC(CCoeEnv::Static()->FsSession());   RDictionaryWriteStream WriteStream;
WriteStream.AssignLC( *IniFile, KUidKey );
WriteStream << *iData;
WriteStream.CommitL();
CleanupStack::PopAndDestroy();   IniFile->CommitL();
CleanupStack::PopAndDestroy();

把它放在一个函数中即可:)

最后要说明的是,如果不在pkg里有明确说明,那保存在系统盘上的ini在程序被删除后是不会丢失的,这就造成了垃圾文件,我们只需要在pkg中加入下面一句就可以彻底删除这些:

Remove INI file when uninstalling the app.

"" – "C:\system\apps\MyApp\MyApp.ini", FN

FN表明这个文件在程序运行时才生成,现在为空。前面用的是""。

Retrieved from "http://wiki.forum.nokia.com/index.php/%E5%85%B3%E4%BA%8Eini%E6%96%87%E4%BB%B6%E7%9A%84%E4%BD%BF%E7%94%A8"

S60 phones

十二 8
From Forum Nokia Wiki

Symbian OS software written for the S60 Platform 1st edition (S60v1) or 2nd edition (S60v2) is not binary compatible with S60 3rd edition (S60v3), because it uses a new, hardened version of the Symbian OS (v9.1).

Series 60 1st Edition (Version 1.0), based on Symbian OS 6.1

Series 60 1st Edition (Version 1.2), based on Symbian OS 6.1

Series 60 2nd Edition (Version 2.0), based on Symbian OS 7.0s

Contains new features like J2ME/MIDP 2.0 support and themes

Series 60 2nd Edition, Feature Pack 1 (Version 2.1), based on Symbian OS 7.0s

Series 60 2nd Edition, Feature Pack 2 (Version 2.6), based on Symbian OS 8.0a

Symbian 8.x has support for WCDMA (GSM 3G) and cdma2000 networks.

Series 60 2nd Edition, Feature Pack 3 (Version 2.8), based on Symbian OS 8.1a

S60 3rd Edition (Version 3.0), based on Symbian OS 9.1

S60 3rd Edition, Feature Pack 1 (Version 3.1), based on Symbian OS 9.2

S60 3rd Edition, Feature Pack 2 (Version 3.2), based on Symbian OS 9.3

See also

S60 Platform and device identification codes

External links

Retrieved from "http://wiki.forum.nokia.com/index.php/S60_phones"