如何提高Brew开发的效率
我们可以细数高通给开发者带来的不便:
(1)对内存没什么保护,很容易就crash啦;
(2)Crash也就算了,机器都给弄死了;
(3)机器死了也就死了,死了可以重启,可是重启速度超慢;
(4)重启速度已经够慢了,可还得忍受连到PC机上的蜗牛速度;
(5)文档不够好,比MSDN差得那不是一点点。
这样下来,开发brew程序的效率就明显要比开发其他平台程序低很多。老板可不会管你这一套,他们眼里看得到的只有money,别人在单位时间内能搞定你为什么不行。所以,为了那刚好维持生计的薪水,你就不得不加班啦。可是brew程序员也是人呐,也要休息,也要有自己支配的时间。怎么办呢?还是古语说得好:工欲善其事,必先利其器。下面就来说说怎么利其器吧。
(1)Brew Mp Mobile Platform(新的brew,以下用bmp代替)支持联机调试,我在http://www.cnblogs.com/li_shugan/archive/2010/09/14/1825797.html中已有详尽描述。不会的可一定要看看啰,因为在程序临终(crash)之前,机子不会死掉,而是停留在出问题的地方。这样一来,debug的速度提升了一个数量级。
(2)尽量不去依赖App Loader或者QPST。你可能要犯湖涂了,没有这两样工具,我怎么把程序弄到真机上去。可以的,用ct这个命令行工具。 ct.exe的全称是connect tool,是高通发布一系列工具之一,你可以在目录$(BREWMP_TOOLSET)\Bin中找到它,为了方便地用它,我建议你首先将$(BREWMP_TOOLSET)\Bin加到你的Path环境变量之中. 有了这个工具,你的联机速度和上传速度就又可以提高一个数量级啦,像这样操作:
(1. 启动device的debug模式;在http://www.cnblogs.com/li_shugan/archive/2010/09/14/1825797.html介绍了3种方法;
(2. 把device连到PC上;
(3. 打开命令行;(开始->运行->Cmd);
(4. ct lt 一下,它会列出连在PC机上的所有device,你就可以确认device确实连上了;
(5. 你可以使用这些命令来做你想要做的事( ct –h可以查看帮助).这里用copy C盘中的一个文件sample.txt到device 上的shared目录下为例;
ct cp C:\sample.txt fs:/sys/shared.
你也可以把shared目录下的sample.txt拷到本地:
ct cp –f fs:/sys/shared/sample.txt C:\sample.txt
总之,这些命令和linux下的命令类似。熟悉linux的人不用一分钟就可以学会ct的全部用法。
(3)利用ct工具做自动化测试。ct提供了让brew程序自动化测试的基础,因为提供了命令可以start一个程序。想要start一个程序.输入以下命令:
ct start clsid.
这样你就可以写一个脚本来自动测试啦。这一下效率又可以提高一大截。
(4)一个人不可能说把个SDK中所有的功能都用过,所以在老板让你research某个东西的时候,你就得查找文档或者例子。但是就SDK自带的那几个例子显然是不行。我这里给出几个找这些例子的好地方。
(1 这是我最推荐的,说出来可能会让你大跌眼镜啦。因为只要是你安装过SDK,你就可以找到的。嘿嘿。BMP SDK中有一个PVS的系统,它安静地躺在$(BREWMP_PLATFORM)/PVS目录下,这是高通自己的unit test,很全的,什么都有,你可以看他的代码,也可以把它们放到device上运行,因为mod全编好了。这里告诉你一种一键Load到device上方法:a)加开SDK Manager; b) 在Tools页面选择Test Studio;然后你就可以在GUI中选择要加载哪些测试用例到device啦。
(2. Create New Workspace (如果你有一个,直接打开就可以啦)
(3. Device->Connect to device
(4. 在Client区域选择要上传的test case,如下图:
(5.Tests=?:pad Cjecled Modules to Device