首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解Android应用程序的.trace文件

理解Android应用程序的.trace文件
EN

Stack Overflow用户
提问于 2019-11-01 19:46:58
回答 1查看 577关注 0票数 0

我的应用程序提供了ANR弹出。要找出我使用以下行生成sample.trace文件的原因:

代码语言:javascript
复制
Debug.startMethodTracing("sample");

在我的活动的onCreate方法中,我添加了这一行以停止对活动的onDestroy方法的跟踪:

代码语言:javascript
复制
Debug.stopMethodTracing();

在销毁活动之后,我会得到sample.trace文件。但是,当我查看文件时,我不理解它。据我所知,有一个在线工具是佩尔西托。

然而,当我打开文件在那里,它显示空白页,而我期待一些UI。

因此,我需要了解文件,找出导致ANR问题的问题,但我不知道该如何做。

这是我的sample.trace文件的一部分:

代码语言:javascript
复制
*version
3
data-file-overflow=true
clock=dual
elapsed-time-usec=165959496
num-method-calls=599184
clock-call-overhead-nsec=3338
vm=art
pid=13695
*threads
14436   RxIoScheduler-2
14460   Okio Watchdog
14589   AsyncTask #5
14612   Timer-0
15013   AsyncTask #6
15014   AsyncTask #7
15015   AsyncTask #8
15049   Timer-4
13695   main
13718   Jit thread pool worker thread 0
13724   Signal Catcher
13726   ADB-JDWP Connection Control Thread
13728   FinalizerDaemon
13729   FinalizerWatchdogDaemon
13727   ReferenceQueueDaemon
13730   HeapTaskDaemon
13732   Binder:13695_1
13733   Binder:13695_2
13736   Binder:13695_3
13895   Profile Saver
13909   Queue
13910   Queue
13911   Queue
13912   Queue
13913   Queue
13914   Queue
13916   Queue
13917   Queue
13915   Queue
13936   Answers Events Handler1
13937   queued-work-looper
13941   Crashlytics Exception Handler1
13950   StethoListener-main
13970   OkHttp ConnectionPool
13977   Binder:13695_4
13978   process reaper
13980   process reaper
14016   RenderThread
14023   Binder:13695_5
14026   Binder:13695_6
14021   Thread-16
14152   Thread-17
14153   Thread-18
14156   Studio:InputCon
14165   magnifier pixel copy result handler
14151   Thread-19
14435   RxIoScheduler-1 (Evictor)
14459   OkHttp ConnectionPool
14476   RealmFinalizingDaemon
14480   pool-3-thread-1
14481   pool-3-thread-2
14482   pool-3-thread-3
14483   pool-3-thread-4
14484   pool-3-thread-5
14487   pool-3-thread-6
14489   pool-3-thread-7
14490   pool-3-thread-8
14491   pool-3-thread-9
14602   glide-disk-cache-thread-0
14604   glide-source-thread-0
14614   Timer-1
14615   IntentService[]
14628   glide-source-thread-1
14630   OkHttp ConnectionPool
14633   glide-active-resources
14780   pool-3-thread-10
14788   Picasso-Stats
14789   Picasso-Dispatcher
14790   Picasso-refQueue
14805   Timer-3
14973   SpotScheduleThread
14974   PlaylistScheduleThread
14980   pool-3-thread-11
15000   pool-3-thread-12
15021   RxComputationScheduler-1
15025   RxComputationScheduler-2
15028   OkHttp ConnectionPool
15050   Timer-5
15052   pool-3-thread-13
15053   pool-3-thread-14
15767   pool-3-thread-15
15771   pool-3-thread-16
15772   pool-3-thread-17
*methods
0x18c8  java.lang.BootClassLoader   getInstance ()Ljava/lang/BootClassLoader;   ClassLoader.java
0x6ba0  java.lang.BootClassLoader   findClass   (Ljava/lang/String;)Ljava/lang/Class;   ClassLoader.java
0x6b9c  java.lang.BootClassLoader   loadClass   (Ljava/lang/String;Z)Ljava/lang/Class;  ClassLoader.java
0x7878  java.lang.ClassLoader   <init>  (Ljava/lang/ClassLoader;)V  ClassLoader.java
0x7880  java.lang.ClassLoader   <init>  (Ljava/lang/Void;Ljava/lang/ClassLoader;)V  ClassLoader.java

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-05 12:22:40

正如我所了解的,我可以使用,Android,来查看哪个进程在cpu上占据了更多的位置,等等。

我唯一需要做的就是打开Profiler窗口,然后单击+按钮并从文件加载。然后将显示.trace文件的统计信息。

谢谢!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58665068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档