草庐IT

PERFORMANCE

全部标签

android - ICS 中不确定的进度条跳跃的最佳解决方法是什么?

我有一个自定义布局,其中包括主ListView上方的进度条。当列表刷新时,我将进度条设置为不确定。在JellyBean及更高版本上,这很好用。然而,在IceCreamSandwich中,当设置为不确定时,它会跳到上面几个像素,足以将它的一部分隐藏在ActionBar下。解决此问题的最佳方法是什么?有两个具有不同marginTop值的进度条,并在确定和不确定模式之间切换时通过更改View可见性在它们之间切换?更改模式时更改进度条的LayoutParams?还是其他方式?在这两种情况下,我都可以进行选择性处理,这样在第一种方式中,我会为不同的API版本设置不同的布局,在第二种方式中,如果S

android - 不应该为 RecyclerView 项目 View 使用数据绑定(bind)吗?

我目前正在研究为什么我的某些RecyclerView表现不佳。UI滞后,尤其是当需要绘制View的全部内容时。使用systrace我遇到了一个大框架,其中RecyclerView布局了它的View:如您所见,重复绘制了相同的View。在systrace中,我在RecyclerView框架上找到了以下描述:OnLayouthasbeencalledbytheViewsystem.IfthisshowsuptoomanytimesinSystrace,makesurethechildrenofRecyclerViewdonotupdatethemselvesdirectly.Thiswil

android - built-in Animation 适合长时间运行的慢动画吗?

我需要在主屏幕上有相对缓慢移动的图像(有些像动态壁纸),我想知道,就CPU负载而言,Android动画类是否适合这种情况?我担心的是android动画以最高帧速率不断运行,有时它会连续几个周期产生相同的X、Y坐标。并且没有办法降低动画帧速率。Google有什么推荐吗? 最佳答案 动画代码还是很简单的。你不会看到任何重大的减速,除非你一次做一些非常疯狂的动画。你要开始多少?如果只有1,那么不用担心,您会没事的。只是为了给你一个想法,我在我的游戏中开始了30多帧动画,帧率变化不大。IMO补间动画会更流畅。

Android 默认线程及其使用

我正在开发一个android库,为了防止应用程序变慢,我在单独的线程中尽可能多地做。我目前正在调查我的库负责哪些线程,哪些不是我的责任。我创建了一个非常简单的android应用程序,并在前后进行了测试。重要的部分是之前发生的事情以及为什么所有这些线程都已经由android创建。ma​​in:主执行线程。GC:垃圾收集器线程。SignalCatcher:线程捕获信号。编译器ReferenceQueueDaemon:http://osxr.org/android/source/libcore/luni/src/main/java/java/lang/Daemons.java#0116Fin

java - 为什么 resolveInfo.loadLabel () 如此慢得离谱?

在我的主屏幕替换应用程序中,我必须获取所有已安装应用程序的列表才能将它们放入应用程序抽屉中。因此,以下方法会在每个应用程序上运行;publicstaticAppfromResolveInfo(Contextcontext,PackageManagerpacMan,AppManagerappManager,ResolveInforesInf){Stringlabel=resInf.loadLabel(pacMan).toString();StringpackageName=resInf.activityInfo.applicationInfo.packageName;Stringacti

android - 模拟器临时文件占用了我的磁盘

我发现我的android模拟器在C:\Users\\AppData\Local\Temp\AndroidEmulator中创建了将近1Gb的临时文件。因此由于空间有限,模拟器没有启动。这些临时文件是什么?这些临时文件是否重要到足以保留它?我可以删除它吗?提前致谢。 最佳答案 看看c:\Users\\.android\avd\我认为安全的清洁方法是使用AVDManager中的删除选项。通常每个模拟器占用大约1Gb的磁盘空间。 关于android-模拟器临时文件占用了我的磁盘,我们在Stac

android - 破折号路径效果使屏幕变慢

我正在尝试使用由点组成的同心圆制作自定义View。我附上了截图以供引用。直到自定义View只有同心圆时,它工作正常,但一旦我应用DashPathEffect,它就会使整个屏幕变慢,当您尝试打开或关闭抽屉导航时,这非常明显。我附上了下面的日志。这是解释问题的视频链接https://youtu.be/5Mgz4QhXaQI自定义ViewpublicclassConcentricCircularViewextendsView{privatestaticfinalStringTAG="ConcentricCircularView";privatePaintpaint;privateContex

android - 如何在不更改其功能的情况下覆盖处理未捕获的异常

我问了this一段时间后在Stackoverflow上提问,答案对我有用,它覆盖了handleUncaughtException,我保存异常并抛出默认值Unfortunatelyapphasstoppedworking,但是当我将它集成到我的应用程序中时,我遇到了一个问题。这就是我得到的答案。privateThread.UncaughtExceptionHandlerdefaultExceptionHandler;publicvoidregisterCrash(){defaultExceptionHandler=Thread.getDefaultUncaughtExceptionHan

android - 在 Android Listview 中显示流数据的最佳方式

我们试图在ListView中显示表格数据。数据由8列和大约50行组成。在一秒钟内大约有8个更新数据到来。(即:将row2-column5更新为某物。)每次有新数据到来时,我们都会更新专用单元格,并调用适配器的datasetchanged()这会导致一些性能和滚动问题。我的问题是:在Android中使用标准小部件显示流数据的最佳方式是什么? 最佳答案 您可以尝试只刷新需要更新的项目。为此,您需要数据在ListView中的位置。privatevoidupdateData(intposition){intfirstItem=listVie

android - 从嵌入式 Android WebView 记录 HTTP 请求的开始和完成

我正在寻找一种方法来记录嵌入式WebView发出的请求和开始/结束时间。到目前为止,除了root手机和运行tcpdump之外,我找不到其他方法来做到这一点。这对我有用,但我需要在现场运行它,所以这不太可行。有很多方法可以记录URL和开始时间,但我看不到结束(或者,奖金,完整的响应元数据)。如果我可以包装当前请求,shouldLoadResource就可以工作,但我必须通过HTTP支持自己获取它才能将其全部返回,因为没有足够的API公开以完全转发到内部请求。(出于多种原因我不想这样做,包括设备上的webview不使用与HTTP类相同的网络堆栈,并且因为它会改变子资源的时间。)我一直在尝试