您的位置:首页 > 其它

[WinCE]CP N900上面的开发,举步艰难

2009-10-03 16:27 176 查看
由于工作需要,在CP N900上面开发了一段时间,相当辛苦.
刚开始开发,Coolpad没有开放SDK,所以,SDK,文档,模拟器,总之,几乎所有的东西都是没有的...打电话,CP的人说没听过SDK......也不知道在什么时候,处于什么原因,CP开放了SDK,而且还有文档,不过我已经不是很关心了.

下面的经验,或许对你在N900上面开发应用有些作用....

1. 及早的解决SDK,文档,Demo的问题.

没有这些,解决问题就是痴心妄想.由于N900是WinCE 6定制的系统,有一些API之类的是WM上面没有的.

2. 选用一种编程Easy的数据,如果程序需要数据库的话.

我们之前选用的SQL CE 3.0.实践证明这个选择非常不明智.SQL CE 3.0在N900上面有Bug,某些表读不出来数据....换成SQL CE 3.5 bug解决,但是又碰见另外一个问题,就是C++代码和C#代码想同时访问DB....由于本人之前没写过C++代码,更别说C++代码访问SQL CE了....弄的焦头烂额.

所以,就诞生了Jake.NET兄的一篇文章......很可惜我还没用上那个Helper,就换成了普通文件了.向Jake的辛苦努力道歉,我还欠他一个单元测试.希望这两天可以搞定.

如果你们的应用,可以使用SQLite,最好使用.我是一个SQLite 控..咔咔

3. 模拟器.

实践证明,CP 9030的模拟器是用来看的.我绝大部分时间是写Managed代码的,那些Managed代码在CP 9030上面完全不能调试.唯一所能做的,就是写完代码在机器上面跑一把,记录问题,解决,继续跑.....浪费了n多时间....哎

4. 调试.

模拟器不能跑Managed代码,但是Native代码还是可以跑跑.据CP的人员说,最好在真机上面调试.但是N900没有提供Vista(及其衍生品)上面的同步工具.所以我只能写完程序,继续拿到真机上面跑.....

还有,CP 9030 SDK的STL的ifstream有一个Bug,导致我的程序读取文件时,一直有一个空指针异常.后来被迫换成WM 6 SDK就好了....不知道他们解决问题了没有....

5. 打电话.

出现问题,及早打电话骚扰CP的开发人员.不知道是什么缘故,CP打包SDK的时候,没有把.NET CF打包进去,所以Managed程序不能调试;而且,同步工具也没打包进去,所以,不能连通网络;而且,SDK里面把Document和Sample也没有打包进去,所以,你只能打电话要.

在此向帮助过我的CP开发人员CY致以谢意.

PS:

这两天要在WM上面搞短信拦截,于是乎发现CP N900上面的短信拦截程序做的还不错的.通过一个配置文件"动态"(只能在OS启动时)加载拦截程序,处理完成之后,可以决定是否要将短信归还给OS.不像.NET类库,完全阉割版,达不到功能,需要用MAPI实现....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: