我正在开发一个Android应用程序,在我的Nexus S上测试它。如果我正在运行它,使用minSdkVersion =“7”,targetSdkVersion =“7”它表现不错,但如果我设置了targetSdkVersion(或两个变量)对于高于13的东西,该应用程序开始表现非常糟糕。
我的自定义视图完成绘制后,应用程序的GUI挂起(没有显示ANR)约5秒钟,然后它完美运行。
有什么想法吗?
修改
我想在API 16上开发我的应用程序,但是向下兼容API级别7,所以我想在API 16和API 7上进行测试。但是在16级它的性能很差。
IMO这没有意义,因为如果我的手机使用的是Android 4.1,那么定位到16级的应用应该比定位7的应用效果更好。
绘制视图时API 13和14之间的主要区别是什么?
我正在使用一些自定义视图,来自支持包的SherlockActionbar和ViewPager。
由于
答案 0 :(得分:1)
我遇到了同样的问题。
当您切换到targetSdkVersion=14
时,android:hardwareAccelerated
将默认为“true”而非“false”
这将允许您定位14并且不会遇到性能问题:
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="14" />
<application android:hardwareAccelerated="false" >
答案 1 :(得分:0)
如果您将目标版本设置为高于最低版本,则可以使用min版本不知道的命令。它适用于您知道更高版本具有更好代码变体的内容,因此您可以检查设备运行的版本,然后使用代码nr1或代码nr2。
如果您确定如何处理它,则应该只使用不同的api版本。