博 文
任何程序的开发都离不开单元测试来保证其健壮和稳定。Android的程序自然也不例外。从Android SDK 0.9开始,就有了比较成熟的测试框架,但是直到目前最新的1.1版本,也没有详细的文档介绍这个内容,只是简单的给了一个Api Demos里的几个单元测试代码。因此,我在这里对此内容做一下梳理和总结:
JUnit还能用么?
在Java下做单元测试必然用到JUnit。这里说的JUnit是指从Apache基金会下载的junit.jar里提供的一系列单元测试功能。这些功能显然是运行在JDK之上的。在Android下已经没有了JDK,自然也无法运行JUnit。但是这并不妨碍我们利用JUnit编写单元测试。只不过在运行单元测试时,一定要用JDK来运行,利用java命令来启动JUnit的某个Runner。如果是用Eclipse的话,可以在Run Configuration里新建一个JUnit。但是一定要记得在Classpath选项卡里将Bootstrap Entries中的Android Library改成JRE,并且添加junit.jar。
很明显的,这种测试就是正规的Java单元测试,和Android没有任何关系。你无法测试任何关于Android系统中的API,你写的Activity,人机界面等等。所以,如果你想测试仅仅是一些封装数据的对象,或者是纯粹的数值计算,还是可以用这种方法的。
Android里面的junit.framework包是怎么回事?
很多人看到这个包的时候,第一反应是Android是不是已经完整集成了JUnit。很遗憾这不是事实。如果你按照JUnit的运行方法,却不像上面那样改用JDK,就一定会得到一个异常:
## An unexpected error has been detected by Java Runtime Environment: ## Internal Error ...
微软公司近日宣布,他们已经收购了一家名为MobiComp的移动云计算服务提供商。MobiComp是葡萄牙的一家知名手机软件公司,这次微软对其进行收购,相关人士推测是为Zune Phone手机的推出而进行的技术准备,Zune Phone是微软进军手机业的先锋。当然,微软加速布局手机终端的最终目的乃是占领移动互联网。在微软之前,苹果、诺基亚等硬件厂商在移动互联网领域耕耘已久。微软的介入将使移动互联网的竞争进入白热化阶段。
微软是否会进军手机终端产业,为何要进入?
我想微软如果不收购像摩托罗拉这样的全球前几强的手机厂商的话,其迟早会进入手机终端产业的。
symbian足够大的市场份额(据市场研究公司Canalys对2007年全球智能手机市场占有率统计:Symbian占65%)以及windows mobile在抢占了一定的高端用户群体后一直打不开中低端手机市场局面的情况下。微软知道,如果不生产自己的手机,想依靠第三方来推动的话其操作系统可能永远也达不到与其pc市场相匹配的地位。比如去年《互联网周刊》的一篇报道说:微软说06年底大量的国产手机如夏新、中兴、联想、明基西门子等都会推出基于微软操作系统的新机器上市试图侵略几乎被symbian独占的中低端市场……如今,夏新还在艰难自救,明基西门子已不复存在、联想现在感觉都不如天语了、中兴几乎只能算还在做几乎没有用户用的3G手机,所以,windows mobile要进一步做大,微软肯怕还得靠自己,如果不进一步加快脚步,肯怕未来微软在移动互联网领域有可能会远远不如其做得不并好的pc互联网业...
记得以前有人问过色么是三阶互调,曾引起一番讨论,懒得去找原贴,总觉得贴太老再拿出来象是晒咸鱼干,还是重新发一个好。 1。交调和互调 如果有两个频率F1,F2,经过非线性器件,会有2F1-F2和2F2-F1,叫三阶~调。 如果有个强干扰(通常是邻信道〕,再加上收发隔离不好,由于LNA的非线性,会对有用信道产生AM调制,这个似乎就是另一个”调“了。 互,意思是“相互”。交,意思是“交叉”(废话,谁不知!〕 E文正好也有INTER MODULAION(相互调)和CROSS MODULATION(交叉调),如果互调与交调是泊来的,那么以上第一个应该叫三阶互调,后者叫交调。 但我们很多人都习惯叫三阶交调。那三阶互调怎么办?这就象电感为色么要用”L“来表示,只是个名,不必认真,只要明白其意义就是了。 2。电缆和接头也会有三阶交调? 当初那位朋友问起时,我曾信誓旦旦地说谈电缆和接头的三阶交调没色么意义。 但的确有,据说是接触不好和材料引起的,在输入是大功率时有,更有例子说镀了孽(对不起,应该是镍)才95DB,输入两个20W信号测得。 3。如何测电缆和接头的三阶交调 这个可不容易,一般指标是120DB,整个测试系统的三阶交调都很难做到,两个大功率源,相互隔离要极好,合路器。。。。懒得写了,以后再续。
表征天线性能的主要参数有方向图,增益,输入阻抗,驻波比,极化方式等。1.1 天线的输入阻抗 天线的输入阻抗是天线馈电端输入电压与输入电流的比值。天线与馈线的连接,最佳情形是天线输入阻抗是纯电阻且等于馈线的特性阻抗,这时馈线终端没有功率反射,馈线上没有驻波,天线的输入阻抗随频率的变化比较平缓。天线的匹配工作就是消除天线输入阻抗中的电抗分量,使电阻分量尽可能地接近馈线的特性阻抗。匹配的优劣一般用四个参数来衡量即反射系数,行波系数,驻波比和回波损耗,四个参数之间有固定的数值关系,使用那一个纯出于习惯。在我们日常维护中,用的较多的是驻波比和回波损耗。一般移动通信天线的输入阻抗为50Ω。驻波比:它是行波系数的倒数,其值在1到无穷大之间。驻波比为1,表示完全匹配;驻波比为无穷大表示全反射,完全失配。在移动通信系统中,一般要求驻波比小于1.5,但实际应用中VSWR应小于1.2。过大的驻波比会减小基站的覆盖并造成系统内干扰加大,影响基站的服务性能。回波损耗:它是反射系数绝对值的倒数,以分贝值表示。回波损耗的值在0dB的到无穷大之间,回波损耗越大表示匹配越差,回波损耗越大表示匹配越好。0表示全反射,无穷大表示完全匹配。在移动通信系统中,一般要求回波损耗大于14dB。1.2 天线的极化方式 所谓天线的极化,就是指天线辐射时形成的电场强度方向。当电场强度方向垂直于地面时,此电波就称为垂直极化波;当电场强度方向平行于地面时,此电波就称为水平极化波。由于电波的特性,决定了水平极化传播的信号在贴近地面时会在大地表面产生...
随着国际上3G商用网络推出的增多,以及中国3G执照发行的临近,3G网络规划已经被越来越多的中国移动通信运营商提到议事日程上来。因为前期网络规划在很大程度上决定了网络的结构,对网络投资以及质量起着决定性作用,是将来网络发展的基础,故越来越多的人开始关心3G网络的规划与设计。WCDMA的网络规划及优化与GSM有很大的不同,在此仅对WCDMA网络规划及优化面临的一些挑战做一简单介绍。
WCDMA在变革中诞生
众所周知,GSM由于其优越的开放标准及其良好的兼容性,得到了长足发展,已经成为第二代移动通信的主要标准并吸收了超过全球70%的移动用户,尤其是从今年以来,在全球新增用户中,有超过80%用户选择了GSM。但是,随着数据业务的普及及互联网的发展,终端移动用户对业务种类的多样性,以及数据传输速率的要求也相应提高,第三代移动通信标准UMTS应运而生。作为第三代移动通信标准之一的WCDMA由于其良好的兼容性及可发展性,是目前GSM网络的自然演进,得到了广大运营商的青睐。WCDMA所提供的可变速率,多业务能力,为运营商提供了坚实的技术平台以及广阔的市场空间,但同时也为网络规划及优化带来了很大的挑战。
由于WCDMA要提供可变速率的多业务能力,又要考虑网络的兼容性和可扩展性,故和GSM相比,其网络复杂程度大为增加。特别是在无线接口方面,业务的不同对空中接口提出了许多新的要求。因此,为了更好地管理和使用网络,WCDMA系统引入了许多新的技术及特性,这些都和GSM大不相同,相应的WCDMA网络规划和优化也和以前不同,需要考虑的因素也更多,复...
会员cdmapcs的提问
想知道生产CDMA手机时进行射频校准的过程,我只是大概知道需要综测和电脑连接运行校准软件同时控制综测和手机(用数据线连接手机)来完成。
安捷伦的综测到电脑的这方面接口协议是否有公开资料?手机的控制,补偿指令是否有通用指令?
我倒是有软件可以读出手机的调整好的射频补偿参数和及时的RX,TX射频参数,而且这些读写指令已经分析出来了,可以用串口调试器进行单独调试,但似乎射频补偿参数不能立刻生效,只有重开机后才能生效。
调试软件只对每一参数只测试一次与标准比较自动生成补偿值写入手机完成,还是另外有能及时生效的手机射频控制指令多次对每一参数测试补偿直到达到标准,再最后转为固定的补偿值写入手机?或射频校准需要多次开机测试,以让上次补偿生效再测试直到符合标准?
会员fufeng的回答
首先,控制手机的有AT命令;
安捷伦的综测仪就更不用当心了,他们都有专用的编程指南,你只要按照相应仪器的编程指南来编写程序就可以了。
另外,手机一般只会在开机的时候从EEPROM读取相应的硬件参数补偿信息到暂存器,开机后,就算手机的EEPROM信息被修改,也不会马上有效。不过你可以让校准软件进行写入EEPROM信息的同时,也修改手机暂存器的信息,这样 补偿后的效果会马上出现。如果这样操作有困难,你就只能在校准程序中加入一个让手机自动重启的指令了。
手机的校准是...
WCDMA功率控制包括上下行闭环加外环功率控制方式: a.闭环功率控制: 顾名思义就是对功率加以控制咯,这里的功率指的是UE或者基站的发射功率,为什么要对功率加以控制?一个说明问题的例子是远近效应,如图: UE2处于小区边缘,UE2处于近基站位置,如果没有功率控制机制使两个UE到达基站的功率在相同电平上,由于UE2的路径损耗极大,P2小于P1,所以UE1将阻塞小区的通信。这是需要上行功控的例子。另一个例子是下行的,上图中UE2处于小区边缘时受到来自其他小区的干扰增强,这时候需要基站增加下行信号发射功率。而不论是上行功控还是下行功控无线链路都构成了一个闭环像图中所示那样,这恐怕就是闭环功控命名缘由吧:) 我们对上行、下行闭环功控总结如下: 上行闭环功控: 目标:使不同的UE到达基站的功率在相同的电平上。 方法:基站频繁地测量收到的SIR(信干比),与保存的相对固定的SIR目标值比较。如果接收的SIR小于SIR目标值就通过下行链路命令UE提高发射功率,反之命令UE降低发射功率。 下行闭环功控: 目标:使到达小区边缘的UE或者在其他的当UE需要基站改变发射功率的情况下调整基站的发射功率。 b.外环功率控制: 为什么叫外环?我想可能是因为除了基站和UE之间的上下行链路构成一个环以外还在RNC(UTRAN内的无线网络控制器)和基站间还有一个环,是谓外环。如图: 目标:获得恒定的链路质量。链路质量怎么度...