一次block在不同时间打印多个相同的堆栈信息
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 25/100
- Issue-Typ
- Bug
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Bereich
- mobile-dev, performance
Rechercherichtung
Beginne damit, die wiederholten Stack-Samples und Zeitstempel in diesem Report zu untersuchen, insbesondere den Pfad durch ClassUtils.getFileNameByPackageName und LogisticsCenter.init. Verfolge, wie der Monitor während eines Blocks Stack-Informationen erfasst und ausgibt, reproduziere dann das Verhalten und verifiziere, dass identische Stacks für einen Block nicht wiederholt ausgegeben werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
2017-10-29 10:32:17(write log time)
qua = unknown
versionName = 4.9.0
versionCode = 490
imei = 863360022872042
uid = uid
network = unknown
model = MI 3W
api-level = 19 4.4.4
cpu-core = 4
process = com.pingan.lifeinsurance
freeMemory = 747180
totalMemory = 1898220
time = 5050
thread-time = 589
time-start = 10-29 10:32:12.601
time-end = 10-29 10:32:17.651
cpu-busy = false
cpu-rate = 10-29 10:32:14.406 cpu:52% app:2% [user:45% system:3% ioWait:3% ]
10-29 10:32:15.410 cpu:55% app:80% [user:30% system:9% ioWait:15% ]
10-29 10:32:16.411 cpu:59% app:0% [user:43% system:6% ioWait:10% ]
10-29 10:32:17.413 cpu:57% app:76% [user:34% system:10% ioWait:12% ]
stack = 10-29 10:32:13.403
dalvik.system.DexFile.openDexFileNative(Native Method)
dalvik.system.DexFile.openDexFile(DexFile.java:296)
dalvik.system.DexFile.(DexFile.java:111)
dalvik.system.DexFile.loadDex(DexFile.java:151)
com.alibaba.android.arouter.utils.ClassUtils.getFileNameByPackageName(ClassUtils.java:62)
com.alibaba.android.arouter.core.LogisticsCenter.init(LogisticsCenter.java:61)
com.alibaba.android.arouter.launcher._ARouter.init(_ARouter.java:60)
com.alibaba.android.arouter.launcher.ARouter.init(ARouter.java:41)
com.pingan.lifeinsurance.framework.router.PARouter.initRouter(PARouter.java:53)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:160)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:148)
com.pingan.lifeinsurance.business.index.fragment.IndexFragment.onBannerClick(IndexFragment.java:622)
com.pingan.lifeinsurance.business.index.adapter.IndexBannerAdapter$1.onCustomClick(IndexBannerAdapter.java:42)
com.pingan.lifeinsurance.baselibrary.function.click.BaseOnClickListener.onClick(BaseOnClickListener.java:14)
android.view.View.performClick(View.java:4444)
android.view.View$PerformClick.run(View.java:18440)
android.os.Handler.handleCallback(Handler.java:733)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:136)
android.app.ActivityThread.main(ActivityThread.java:5034)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:807)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:623)
dalvik.system.NativeStart.main(Native Method)
10-29 10:32:14.405
dalvik.system.DexFile.openDexFileNative(Native Method)
dalvik.system.DexFile.openDexFile(DexFile.java:296)
dalvik.system.DexFile.(DexFile.java:111)
dalvik.system.DexFile.loadDex(DexFile.java:151)
com.alibaba.android.arouter.utils.ClassUtils.getFileNameByPackageName(ClassUtils.java:62)
com.alibaba.android.arouter.core.LogisticsCenter.init(LogisticsCenter.java:61)
com.alibaba.android.arouter.launcher._ARouter.init(_ARouter.java:60)
com.alibaba.android.arouter.launcher.ARouter.init(ARouter.java:41)
com.pingan.lifeinsurance.framework.router.PARouter.initRouter(PARouter.java:53)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:160)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:148)
com.pingan.lifeinsurance.business.index.fragment.IndexFragment.onBannerClick(IndexFragment.java:622)
com.pingan.lifeinsurance.business.index.adapter.IndexBannerAdapter$1.onCustomClick(IndexBannerAdapter.java:42)
com.pingan.lifeinsurance.baselibrary.function.click.BaseOnClickListener.onClick(BaseOnClickListener.java:14)
android.view.View.performClick(View.java:4444)
android.view.View$PerformClick.run(View.java:18440)
android.os.Handler.handleCallback(Handler.java:733)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:136)
android.app.ActivityThread.main(ActivityThread.java:5034)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:807)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:623)
dalvik.system.NativeStart.main(Native Method)
10-29 10:32:15.408
dalvik.system.DexFile.openDexFileNative(Native Method)
dalvik.system.DexFile.openDexFile(DexFile.java:296)
dalvik.system.DexFile.(DexFile.java:111)
dalvik.system.DexFile.loadDex(DexFile.java:151)
com.alibaba.android.arouter.utils.ClassUtils.getFileNameByPackageName(ClassUtils.java:62)
com.alibaba.android.arouter.core.LogisticsCenter.init(LogisticsCenter.java:61)
com.alibaba.android.arouter.launcher._ARouter.init(_ARouter.java:60)
com.alibaba.android.arouter.launcher.ARouter.init(ARouter.java:41)
com.pingan.lifeinsurance.framework.router.PARouter.initRouter(PARouter.java:53)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:160)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:148)
com.pingan.lifeinsurance.business.index.fragment.IndexFragment.onBannerClick(IndexFragment.java:622)
com.pingan.lifeinsurance.business.index.adapter.IndexBannerAdapter$1.onCustomClick(IndexBannerAdapter.java:42)
com.pingan.lifeinsurance.baselibrary.function.click.BaseOnClickListener.onClick(BaseOnClickListener.java:14)
android.view.View.performClick(View.java:4444)
android.view.View$PerformClick.run(View.java:18440)
android.os.Handler.handleCallback(Handler.java:733)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:136)
android.app.ActivityThread.main(ActivityThread.java:5034)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:807)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:623)
dalvik.system.NativeStart.main(Native Method)
10-29 10:32:16.410
dalvik.system.DexFile.openDexFileNative(Native Method)
dalvik.system.DexFile.openDexFile(DexFile.java:296)
dalvik.system.DexFile.(DexFile.java:111)
dalvik.system.DexFile.loadDex(DexFile.java:151)
com.alibaba.android.arouter.utils.ClassUtils.getFileNameByPackageName(ClassUtils.java:62)
com.alibaba.android.arouter.core.LogisticsCenter.init(LogisticsCenter.java:61)
com.alibaba.android.arouter.launcher._ARouter.init(_ARouter.java:60)
com.alibaba.android.arouter.launcher.ARouter.init(ARouter.java:41)
com.pingan.lifeinsurance.framework.router.PARouter.initRouter(PARouter.java:53)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:160)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:148)
com.pingan.lifeinsurance.business.index.fragment.IndexFragment.onBannerClick(IndexFragment.java:622)
com.pingan.lifeinsurance.business.index.adapter.IndexBannerAdapter$1.onCustomClick(IndexBannerAdapter.java:42)
com.pingan.lifeinsurance.baselibrary.function.click.BaseOnClickListener.onClick(BaseOnClickListener.java:14)
android.view.View.performClick(View.java:4444)
android.view.View$PerformClick.run(View.java:18440)
android.os.Handler.handleCallback(Handler.java:733)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:136)
android.app.ActivityThread.main(ActivityThread.java:5034)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:807)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:623)
dalvik.system.NativeStart.main(Native Method)
10-29 10:32:17.412
dalvik.system.DexFile.openDexFileNative(Native Method)
dalvik.system.DexFile.openDexFile(DexFile.java:296)
dalvik.system.DexFile.(DexFile.java:111)
dalvik.system.DexFile.loadDex(DexFile.java:151)
com.alibaba.android.arouter.utils.ClassUtils.getFileNameByPackageName(ClassUtils.java:62)
com.alibaba.android.arouter.core.LogisticsCenter.init(LogisticsCenter.java:61)
com.alibaba.android.arouter.launcher._ARouter.init(_ARouter.java:60)
com.alibaba.android.arouter.launcher.ARouter.init(ARouter.java:41)
com.pingan.lifeinsurance.framework.router.PARouter.initRouter(PARouter.java:53)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:160)
com.pingan.lifeinsurance.framework.router.PARouter.navigation(PARouter.java:148)
com.pingan.lifeinsurance.business.index.fragment.IndexFragment.onBannerClick(IndexFragment.java:622)
com.pingan.lifeinsurance.business.index.adapter.IndexBannerAdapter$1.onCustomClick(IndexBannerAdapter.java:42)
com.pingan.lifeinsurance.baselibrary.function.click.BaseOnClickListener.onClick(BaseOnClickListener.java:14)
android.view.View.performClick(View.java:4444)
android.view.View$PerformClick.run(View.java:18440)
android.os.Handler.handleCallback(Handler.java:733)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:136)
android.app.ActivityThread.main(ActivityThread.java:5034)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:807)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:623)
dalvik.system.NativeStart.main(Native Method)
- Vorherrschende Sprache
- Java
- Sterne
- 6.7k
- Forks
- 1k
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus markzhai/AndroidPerformanceMonitor
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
markzhai/AndroidPerformanceMonitor#144 · 4 Kommentare · 1 Reaktion ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
markzhai/AndroidPerformanceMonitor#154 · 3 Kommentare ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 5/100
markzhai/AndroidPerformanceMonitor#153 · 5 Kommentare · 1 Reaktion ·
-
这个库希望有人能维护一下Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 15/100
markzhai/AndroidPerformanceMonitor#149 · 5 Kommentare · 3 Reaktionen ·
-
如何保证捕获卡顿堆栈的准确性?Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 25/100
Alle Issues in markzhai/AndroidPerformanceMonitor
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 67/100
quarkiverse/quarkus-google-cloud-services#1188 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Component: Frontend Component: Web Component Type: Maintenance
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
it-at-m/refarch-templates#1944 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
priority: p2 type: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
googleapis/java-genai#1372 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 60/100