Giter Site home page Giter Site logo

qihoo360 / argusapm Goto Github PK

View Code? Open in Web Editor NEW
2.7K 85.0 425.0 16.57 MB

Powerful, comprehensive (Android) application performance management platform. 360线上移动性能检测平台

License: Apache License 2.0

Kotlin 16.88% Java 81.83% IDL 1.29%
android apm gradle plugin argusapm kotlin-android performance-management performance aspectj kotlin java

argusapm's Introduction

ArgusAPM Logo

license Release Version

360开源又一力作——ArgusAPM移动性能监控平台

公告

由于公司业务调整及成本等原因,ArgusAPM停止支持服务端的免费接入服务。对于已经接入的产品不受影响(可以继续免费使用),只是不再新增了! 本项目是个技术类的开源项目,停止服务端接入不会对开源项目本身产生影响,之前的接入文档大家也可以在自己项目里做参考。

项目背景

ArgusAPM是360手机卫士客户端团队继RePlugin之后开源的又一个重量级开源项目。ArgusAPM是360移动端产品使用的可视化性能监控平台,为移动端APP提供性能监控与管理,可以迅速发现和定位各类APP性能和使用问题,帮助APP不断的提升用户体验。

产品价值

  • 实时掌控应用性能
  • 降低性能定位成本
  • 有效提升用户体验

监控模块

ArgusAPM目前支持如下性能指标:

  • 交互分析:分析Activity生命周期耗时,帮助提升页面打开速度,优化用户UI体验
  • 网络请求分析:监控流量使用情况,发现并定位各种网络问题
  • 内存分析:全面监控内存使用情况,降低内存占用
  • 进程监控:针对多进程应用,统计进程启动情况,发现启动异常(耗电、存活率等)
  • 文件监控:监控APP私有文件大小/变化,避免私有文件过大导致的卡顿、存储空间占用等问题
  • 卡顿分析:监控并发现卡顿原因,代码堆栈精准定位问题,解决明显的卡顿体验
  • ANR分析:捕获ANR异常,解决APP的“未响应”问题

ArgusAPM特性

  • 非侵入式

​ 无需修改原有工程结构,无侵入接入,接入成本低。

  • 无性能损耗

​ ArgusAPM针对各个性能采集模块,优化了采集时机,在不影响原有性能的基础上进行性能的采集和分析。

  • 监控全面

​ 目前支持UI性能、网络性能、内存、进程、文件、卡顿、ANR等各个维度的性能数据分析,后续还会继续增加新的性能维度。

  • Debug模式

​ 独有的Debug模式,支持开发和测试阶段、实时采集性能数据,实时本地分析的能力,帮助开发和测试人员在上线前解决性能问题。

  • 支持插件化方案

​ 在初始化阶段进行设置,可支持插件接入,目前360手机卫士采用的就是在RePlugin插件中接入ArgusAPM,并且性能方面无影响。

  • 支持多进程采集

​ 针对多进程的情况,我们做了相应的数据采集及优化方案,使ArgusAPM即适合单进程APP也适合多进程APP。

  • 节省用户流量

​ ArgusAPM使用wifi状态下上传性能数据,这样避免了频繁网络请求带来的耗电问题及用户流量的消耗。

ArgusAPM项目结构图

整体架构分为两部分:一是左边蓝色的部分:性能采集模块,一是右边的绿色部分:Gradle Plugin模块。

下面分别针对这两部分做简单的介绍:

一. 性能采集模块

该模块总共分为五个Module,并最终生成三个aar文件,即:

argus-apm-main.aar:APM项目的核心业务模块

argus-apm-aop.aar:AOP代码的织入模块

argus-apm-okhttp.aar:采集OKHTTP网络性能

其中之所以拆分那么多的模块,是为了能够让我们可插拔式的去使用里面的功能,例如,如果我项目中没有使用OKHTTP相关的功能,那么我们就可以关闭相应的依赖。

二. Gradle Plugin模块

该模块主要具备两个作用:

  1. 支持AOP编程,方便ArgusAPM能够在编译期织入一些性能采集的代码;

  2. 通过Gradle插件来管理依赖库,使用户接入ArgusAPM更简单。

最终,我们在接入ArgusAPM的时候,只需要简单的应用插件即可,而不需要再单独的去依赖各个aar文件。

如何使用

如果您想快速的接入ArgusAPM,请参考《三分钟快速接入ArgusAPM》,依照文章指引,快速接入;

如果您想了解更多的ArgusAPM的使用技巧,请参考《详细接入教程》

如果您想参查看官方的Sample,进而了解具体的用法,请点击这里查看《Sample》;

如果您在接入ArgusAPM的过程中遇到问题,请点击这里阅读《FAQ》,也可加入我们官方的QQ群,进行咨询。

使用现状

手机卫士 清理大师 手机助手 影视大全 花椒相机 360手游大厅
手机卫士 清理大师 手机助手 影视大全 花椒相机 游戏大厅

未来规划

  • 支持更多的性能指标
  • 提升用户体验

官方QQ群

ArgusAPM Logo

360移动技术微信公众号“奇卓社”

ArgusAPM Logo

License

ArgusAPM is Apache v2.0 licensed.

argusapm's People

Contributors

akathink avatar bnotebook avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

argusapm's Issues

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/argusapm/android/aop/TraceActivity;

Process: com.shensz.parents.debug, PID: 24850
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/argusapm/android/aop/TraceActivity;
at android.support.multidex.MultiDexApplication.attachBaseContext(MultiDexApplication.java:38)
at android.app.Application.attach(Application.java:237)
at android.app.Instrumentation.newApplication(Instrumentation.java:1122)
at android.app.LoadedApk.makeApplication(LoadedApk.java:1065)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5919)
at android.app.ActivityThread.access$1200(ActivityThread.java:200)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1673)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:207)
at android.app.ActivityThread.main(ActivityThread.java:6809)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.argusapm.android.aop.TraceActivity" on path: DexPathList[[zip file "/system/framework/org.apache.http.legacy.boot.jar", zip file "/data/app/com.shensz.parents.debug-4h0ww9nUXyRU5HYSAMlC8Q==/base.apk"],nativeLibraryDirectories=[/data/app/com.shensz.parents.debug-4h0ww9nUXyRU5HYSAMlC8Q==/lib/arm, /data/app/com.shensz.parents.debug-4h0ww9nUXyRU5HYSAMlC8Q==/base.apk!/lib/armeabi, /system/lib, /vendor/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:171)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.support.multidex.MultiDexApplication.attachBaseContext(MultiDexApplication.java:38) 
at android.app.Application.attach(Application.java:237) 
at android.app.Instrumentation.newApplication(Instrumentation.java:1122) 
at android.app.LoadedApk.makeApplication(LoadedApk.java:1065) 
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5919) 
at android.app.ActivityThread.access$1200(ActivityThread.java:200) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1673) 
at android.os.Handler.dispatchMessage(Handler.java:106) 
at android.os.Looper.loop(Looper.java:207) 
at android.app.ActivityThread.main(ActivityThread.java:6809) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876) 

编译失败

导入argus-apm到Androidstudio 编译失败,
错误信息:SSL peer shut down incorrectly
电脑已经完全翻墙,并且尝试了多次.
通过终端命令行的方式才编译下载相应包后
又遇到No toolchains found in the NDK toolchains folder for ABI with prefix: mipsel-linux-android的错误

电脑是 macOS 10.13 AS版本是3.1.3

编译过程 ABORT java.lang.ClassCastException

有看到ajcore里面的日志:
---- Compiler Messages ---
abort ABORT -- (ClassCastException) org.aspectj.apache.bcel.classfile.ConstantNameAndType cannot be cast to org.aspectj.apache.bcel.classfile.ConstantUtf8
org.aspectj.apache.bcel.classfile.ConstantNameAndType cannot be cast to org.aspectj.apache.bcel.classfile.ConstantUtf8
java.lang.ClassCastException: org.aspectj.apache.bcel.classfile.ConstantNameAndType cannot be cast to org.aspectj.apache.bcel.classfile.ConstantUtf8
at org.aspectj.apache.bcel.classfile.ConstantPool.getConstantUtf8(ConstantPool.java:276)
at org.aspectj.weaver.bcel.BcelConstantPoolReader.readUtf8(BcelConstantPoolReader.java:31)
at org.aspectj.weaver.VersionedDataInputStream.readUtf8(VersionedDataInputStream.java:61)
at org.aspectj.weaver.ResolvedMemberImpl.readResolvedMember(ResolvedMemberImpl.java:521)
at org.aspectj.weaver.AjAttribute$EffectiveSignatureAttribute.read(AjAttribute.java:734)
at org.aspectj.weaver.AjAttribute.read(AjAttribute.java:127)
at org.aspectj.weaver.bcel.Utility.readAjAttributes(Utility.java:101)
at org.aspectj.weaver.bcel.BcelMethod.unpackAjAttributes(BcelMethod.java:198)
at org.aspectj.weaver.bcel.BcelMethod.(BcelMethod.java:91)
at org.aspectj.weaver.bcel.BcelObjectType.getDeclaredMethods(BcelObjectType.java:291)
at org.aspectj.weaver.ReferenceType.getDeclaredMethods(ReferenceType.java:864)
at org.aspectj.weaver.ResolvedType.getDeclaredAdvice(ResolvedType.java:977)
at org.aspectj.weaver.ResolvedType.getDeclaredShadowMungers(ResolvedType.java:1017)
at org.aspectj.weaver.ResolvedType.collectShadowMungers(ResolvedType.java:843)
at org.aspectj.weaver.ResolvedType.collectCrosscuttingMembers(ResolvedType.java:770)
at org.aspectj.weaver.CrosscuttingMembersSet.addOrReplaceAspect(CrosscuttingMembersSet.java:113)
at org.aspectj.weaver.CrosscuttingMembersSet.addOrReplaceAspect(CrosscuttingMembersSet.java:68)
at org.aspectj.weaver.bcel.BcelWeaver.addLibraryJarFile(BcelWeaver.java:239)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.initBcelWorld(AjBuildManager.java:878)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:251)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:187)
at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:112)
at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
at org.aspectj.tools.ajc.Main.run(Main.java:371)
at com.argusapm.gradle.internal.ajc.AjcWeaver.call(AjcWeaver.kt:76)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

编译报错:java.io.IOException: The input doesn't contain any classes. Did you specify the proper '-injars' options?

14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Execution failed for task ':video_host:transformClassesWithMultidexlistForVideoDevDebug'.
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > java.io.IOException: The input doesn't contain any classes. Did you specify the proper '-injars' options?
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] 
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * Exception is:
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':video_host:transformClassesWithMultidexlistForVideoDevDebug'.
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
14:08:03.681 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter]   at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)


集成后编译报上面的错误

APP启动后闪退

2019-01-03 14:36:51.268 22422-22422/com.julive.assistant E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.julive.assistant, PID: 22422
java.lang.RuntimeException: Unable to instantiate application com.julive.assistant.app.JuliveAssistantApp: java.lang.ClassNotFoundException: Didn't find class "com.julive.assistant.app.JuliveAssistantApp" on path: DexPathList[[zip file "/data/app/com.julive.assistant-2/base.apk"],nativeLibraryDirectories=[/data/app/com.julive.assistant-2/lib/arm, /data/app/com.julive.assistant-2/base.apk!/lib/armeabi, /system/lib, /vendor/lib, /system/vendor/lib, /product/lib]]
at android.app.LoadedApk.makeApplication(LoadedApk.java:855)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5732)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1648)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:156)
at android.app.ActivityThread.main(ActivityThread.java:6623)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.julive.assistant.app.JuliveAssistantApp" on path: DexPathList[[zip file "/data/app/com.julive.assistant-2/base.apk"],nativeLibraryDirectories=[/data/app/com.julive.assistant-2/lib/arm, /data/app/com.julive.assistant-2/base.apk!/lib/armeabi, /system/lib, /vendor/lib, /system/vendor/lib, /product/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.app.Instrumentation.newApplication(Instrumentation.java:995)
at android.app.LoadedApk.makeApplication(LoadedApk.java:849)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5732)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1648)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:156)
at android.app.ActivityThread.main(ActivityThread.java:6623)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
2019-01-03 14:36:51.277 696-1120/? E/logserver: imonitor_add_dynamic_path, path:/data/system/dropbox/[email protected]
2019-01-03 14:36:51.281 1607-3708/? E/ReportTools: This is not beta user build

transformClassesWithDexForDebug

因为为了更加方便debug,不想通过gradle插件的方式引入。
按照下面的方式修改
`apply plugin: 'com.android.application'

//apply from: 'argusapm.gradle'
`
........

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.squareup.okhttp3:okhttp:3.10.0'
compile project (':argus-apm-main')
compile project (':argus-apm-okhttp')
compile project (':argus-apm-cloud')
compile project (':argus-apm-cloud-dummy-impl')
compile project (':argus-apm-aop')
}

但是现在编译报错,日志如下:

  • What went wrong:
    Execution failed for task ':argus-apm-sample:transformClassesWithDexForDebug'.

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files define Lcom/argusapm/android/network/IUpload;

悬浮窗不显示

接入SDK后,悬浮窗没有显示啊,如何开启,还是现在去掉了?

运行错误:AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: local variable type mismatch: attempt to set or access a value of type java.lang.Class[] using a local variable of type java.lang.reflect.Method. This is symptomatic of .class transformation tools that ignore local variable information.","sources":[{}]}

AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: local variable type mismatch: attempt to set or access a value of type java.lang.Class[] using a local variable of type java.lang.reflect.Method. This is symptomatic of .class transformation tools that ignore local variable information.","sources":[{}]}
:app:transformClassesWithDexForDebug FAILED
:app:transformClassesWithDexForDebug spend 19640ms
FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:transformClassesWithDexForDebug'.

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Translation has been interrupted

编译失败:java.util.concurrent.ExecutionException: java.lang.RuntimeException: Translation has been interrupted

Uncaught translation error: com.android.dx.cf.code.SimException: local variable type mismatch: attempt to set or access a value of type java.lang.String[] using a local variable of type org.apache.http.client.methods.HttpUriRequest. This is symptomatic of .class transformation tools that ignore local variable information.

Uncaught translation error: com.android.dx.cf.code.SimException: Argument to RET was not a ReturnAddress

Task :app:transformClassesWithDexForDebug FAILED

  • What went wrong:
    Execution failed for task ':app:transformClassesWithDexForDebug'.

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Translation has been interrupted

Caused by: java.lang.RuntimeException: com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: Translation has been interrupted
at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:55)
at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:104)
at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:212)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
... 29 more

OkHttp 拦截器报StackOverflowError

目前报了三次,
io.reactivex.exceptions.UndeliverableException: java.lang.StackOverflowError
at io.reactivex.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:349)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:69)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:841)
Caused by: java.lang.StackOverflowError
at java.lang.AbstractStringBuilder.append0(AbstractStringBuilder.java:145)
at java.lang.StringBuilder.append(StringBuilder.java:216)
at java.net.InetAddress.toString(InetAddress.java:456)
at java.lang.StringBuilder.append(StringBuilder.java:202)
at libcore.io.IoBridge.connectDetail(IoBridge.java:167)
at libcore.io.IoBridge.connect(IoBridge.java:114)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:460)
at java.net.Socket.connect(Socket.java:833)
at okhttp3.internal.platform.AndroidPlatform.connectSocket(AndroidPlatform.java:73)
at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.java:246)
at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:166)
at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:257)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:135)
at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:114)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:126)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)

java.lang.StackOverflowError
at java.util.HashMap.secondaryHash(HashMap.java:350)
at java.util.LinkedHashMap.get(LinkedHashMap.java:251)
at libcore.util.BasicLruCache.get(BasicLruCache.java:49)
at java.net.AddressCache.get(AddressCache.java:75)
at java.net.InetAddress.lookupHostByName(InetAddress.java:387)
at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
at java.net.InetAddress.getAllByName(InetAddress.java:214)
at okhttp3.Dns$1.lookup(Dns.java:40)
at okhttp3.internal.connection.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:185)
at okhttp3.internal.connection.RouteSelector.nextProxy(RouteSelector.java:149)
at okhttp3.internal.connection.RouteSelector.next(RouteSelector.java:84)
at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:214)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:135)
at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:114)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:126)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)

java.lang.StackOverflowError
at okhttp3.ConnectionPool.get(ConnectionPool.java:124)
at okhttp3.OkHttpClient$1.get(OkHttpClient.java:154)
at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:188)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:135)
at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:114)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:126)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at com.argusapm.android.okhttp3.NetWorkInterceptor.intercept(NetWorkInterceptor.java:49)

编译失败:unable to write compilation result java.util.zip.ZipException: duplicate entry:

< argus-apm-v2.0.1.1007 > ajc weave start...
unable to write compilation result
java.util.zip.ZipException: duplicate entry: aaa/bbb/ccc/CustomerView$16$AjcClosure1.class
at java.util.zip.ZipOutputStream.putNextEntry(ZipOutputStream.java:232)
at java.util.jar.JarOutputStream.putNextEntry(JarOutputStream.java:109)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager$4.writeZipEntry(AjBuildManager.java:1181)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager$4.acceptResult(AjBuildManager.java:1118)
at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.acceptResult(AjPipeliningCompilerAdapter.java:460)
at org.aspectj.ajdt.internal.compiler.WeaverAdapter.finishedWith(WeaverAdapter.java:225)
at org.aspectj.ajdt.internal.compiler.WeaverAdapter.next(WeaverAdapter.java:130)
at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1170)
at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.weaveQueuedEntries(AjPipeliningCompilerAdapter.java:514)
at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.afterCompiling(AjPipeliningCompilerAdapter.java:375)
at org.aspectj.ajdt.internal.compiler.CompilerAdapter.ajc$afterReturning$org_aspectj_ajdt_internal_compiler_CompilerAdapter$2$f9cc9ca0(CompilerAdapter.java:69)
at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:471)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:1051)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:274)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:187)
at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:112)
at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
at org.aspectj.tools.ajc.Main.run(Main.java:371)
at com.argusapm.gradle.internal.ajc.AjcWeaver.call(AjcWeaver.kt:76)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

无法运行项目

出现两个崩溃:

Caused by: java.io.IOException: Failed to read zip file 'C:\Users\Administrator\workspace\chizicheng\hello\EmojiLauncher\launcher\build\intermediates\transforms\argus_apm_ajx\debug\2.jar'.

Caused by: java.io.IOException: EOCD signature not found in the last 0 bytes of the file.

加了 argusApmAjxConfig exclude 之后编译报错


> Task :app:transformClassesWithDexBuilderForOfficialDebug FAILED
java.util.zip.ZipException: zip file is empty
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:225)
        at java.util.zip.ZipFile.<init>(ZipFile.java:279)
        at com.android.tools.r8.ArchiveClassFileProvider.<init>(ArchiveClassFileProvider.java:63)
        at com.android.tools.r8.ArchiveClassFileProvider.<init>(ArchiveClassFileProvider.java:50)
        at com.android.builder.dexing.r8.CachingArchiveClassFileProvider.<init>(CachingArchiveClassFileProvider.java:32)
        at com.android.builder.dexing.r8.ClassFileProviderFactory.createProvider(ClassFileProviderFactory.java:123)
        at com.android.builder.dexing.r8.ClassFileProviderFactory.<init>(ClassFileProviderFactory.java:93)
        at com.android.build.gradle.internal.transforms.DexArchiveBuilderTransform.transform(DexArchiveBuilderTransform.java:348)
        at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:239)
        at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:235)
        at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:102)
        at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:230)
        at sun.reflect.GeneratedMethodAccessor870.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
        at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:50)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)
        at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:131)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:120)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:99)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:77)
        at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)
        at org.gradle.api.internal.tasks.execution.SkipCachedTaskExecuter.execute(SkipCachedTaskExecuter.java:105)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ResolveBuildCacheKeyExecuter.execute(ResolveBuildCacheKeyExecuter.java:66)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:101)
        at org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute(FinalizeInputFilePropertiesTaskExecuter.java:44)
        at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:91)
        at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:62)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:59)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter$1.run(EventFiringTaskExecuter.java:51)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
        at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
        at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
        at org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute(EventFiringTaskExecuter.java:46)
        at org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute(LocalTaskInfoExecutor.java:42)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:273)
        at org.gradle.execution.taskgraph.DefaultTaskExecutionGraph$BuildOperationAwareWorkItemExecutor.execute(DefaultTaskExecutionGraph.java:258)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:135)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:130)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.execute(DefaultTaskPlanExecutor.java:200)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.executeWithWork(DefaultTaskPlanExecutor.java:191)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$ExecutorWorker.run(DefaultTaskPlanExecutor.java:130)
        at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
        at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
        at java.lang.Thread.run(Thread.java:748)

:app:transformClassesWithDexBuilderForOfficialDebug spend 34ms
:app:transformClassesWithDexBuilderForOfficialDebug spend 34ms

OkHttp 的拦截问题

简单粗略的扫了一下,其他的没看,简单的看了 OkHttp 的部分。

说实话 OkHttp 的拦截非常有问题

OkHttp3Aspect

在 OkHttpClient.Builder.build() 的时候添加一个 NetWorkInterceptor 拦截器,作为最外层的普通拦截器,忽略了内部的网络请求自动重定向/重试等多个 Http请求,且拿到的 Response 是转换后的(如自动解 Gzip)统计的结果自然不准确。

而且,这里添加的拦截器,会被 OkHttpClient.interceptors()方法暴露出去。如果有其他逻辑依赖这个方法,就会有问题。

其次,如果是 OkHttpClient.newBuilder(),那么在下次 build 时会有重复的多个拦截器,统计结果能准确吗。

个人认为最佳实践是在 RealCall.getResponseWithInterceptorChain方法内,调用 OkHttpClient.interceptors() 与 networkInterceptor() 时添加对应的拦截器。事实上如果要更多细节的数据,如 DNS TCP 时间等,可以通过� ThreadLocal 来处理数据的联动。

其实在 OkHttp 3.9.0 开始已经内置了 EventListener API 来提供多种事件的回调�,可以作为参考。

NetWorkInterceptor

在这里统计 Response 的 length 时, 如果 Content-Length 为 -1,则 source().request(Long.MAX_VALUE)。
此处如果这个请求是下载某个大文件,那么 source().buffer() 里就会包含全部的字节数据,结果不言而喻。

此处提供一个思路

  1. 做一次探测,request 一个阈值,如果已经读完,自然皆大欢喜。否则
  2. 包裹 ResponseBody,在实际读取的时候记录字节数目。但是注意在读取过程中网络请求失败,则读取的字节数目是不全的,处理对应的上报逻辑即可。

以上。

在8.0的手机上,开启悬浮窗调试会出现Crash

java.lang.RuntimeException: Unable to instantiate application com.argusapm.sample.ArgusAPMApplication: android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@1973eda -- permission denied for window type 2038
    at android.app.LoadedApk.makeApplication(LoadedApk.java:978)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5853)
    at android.app.ActivityThread.-wrap1(Unknown Source:0)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688)
    at android.os.Handler.dispatchMessage(Handler.java:105)
    at android.os.Looper.loop(Looper.java:171)
    at android.app.ActivityThread.main(ActivityThread.java:6699)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:246)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:783)
 Caused by: android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@1973eda -- permission denied for window type 2038
    at android.view.ViewRootImpl.setView(ViewRootImpl.java:813)
    at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:356)
    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:93)
    at com.argusapm.android.debug.view.FloatWindowManager.showBigWindow(FloatWindowManager.java:126)
    at com.argusapm.android.debug.AnalyzeManager.setShowFloatWin(AnalyzeManager.java:62)
    at com.argusapm.android.api.Client.isDebugOpen(Client.java:78)
    at com.argusapm.sample.ArgusAPMApplication.attachBaseContext(ArgusAPMApplication.java:43)
    at android.app.Application.attach(Application.java:194)
    at android.app.Instrumentation.newApplication(Instrumentation.java:1103)
    at android.app.Instrumentation.newApplication(Instrumentation.java:1087)
    at android.app.LoadedApk.makeApplication(LoadedApk.java:972)
    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5853) 
    at android.app.ActivityThread.-wrap1(Unknown Source:0) 
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688) 
    at android.os.Handler.dispatchMessage(Handler.java:105) 
    at android.os.Looper.loop(Looper.java:171) 
    at android.app.ActivityThread.main(ActivityThread.java:6699) 
    at java.lang.reflect.Method.invoke(Native Method) 
    at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:246) 
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:783) 

升级gradle到3.5后,R8报错 R8: Expected list element at proguard.txt:154:40 -keepattributes Exceptions,InnerClasses,...

升级gradle到3.5后,R8报错 R8: Expected list element at proguard.txt:154:40 -keepattributes Exceptions,InnerClasses,...

    classpath 'com.android.tools.build:gradle:3.5.0'  升级后报错

gradle:3.3.0一切正常,升级最新版ArgusAPM还是报错

C:\Users\win10.gradle\caches\transforms-2\files-2.1\66600128aa48d21ef4c09226c4292b08\jetified-argus-apm-main-3.0.1.1001\proguard.txt:157:40-41: R8: Expected list element at C:\Users\win10.gradle\caches\transforms-2\files-2.1\66600128aa48d21ef4c09226c4292b08\jetified-argus-apm-main-3.0.1.1001\proguard.txt:158:40
-keepattributes Exceptions,InnerClasses,...
^

使用ASM插件会崩溃

使用ASM插件会崩溃
classpath 'com.qihoo360.argusapm:argus-apm-gradle-asm:3.0.1.1001'
使用这个版本后,发生崩溃
2019-05-15 17:45:32.949 16298-16298/com.yqxue.yqxue E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.yqxue.yqxue, PID: 16298
java.lang.VerifyError: Verifier rejected class cn.jpush.android.service.PushReceiver: void cn.jpush.android.service.PushReceiver.onReceive(android.content.Context, android.content.Intent) failed to verify: void cn.jpush.android.service.PushReceiver.onReceive(android.content.Context, android.content.Intent): [0x1D] register v4 has type Reference: java.lang.Object but expected Reference: android.content.Context (declaration of 'cn.jpush.android.service.PushReceiver' appears in /data/app/com.yqxue.yqxue-2/base.apk:classes2.dex)
at java.lang.Class.newInstance(Native Method)
at android.app.ActivityThread.handleReceiver(ActivityThread.java:3106)
at android.app.ActivityThread.-wrap18(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1641)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:163)
at android.app.ActivityThread.main(ActivityThread.java:6385)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:794)

创世之初,会遇到各种问题

1:编译报错
程序有多library,有分包
ABORT
org.aspectj.weaver.BCException: Whilst processing type 'Lcom/hyphenate/chat/EMCallManager$EMVideoCallHelper;' - cannot cast the outer type to a reference type. Signature=Lcom/hyphenate/chat/EMCallManager; toString()=com.hyphenate.chat.EMCallManager class=EMCallManager
when processing type mungers
when weaving
when batch building with classpath: C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_141\jre\lib\ext\zipfs.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\alipaySdk-20160516.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\BestpaySDK-V4.0.2.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\com.bonree.agent.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\maa_sdk_android.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\passguard.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\pushservice-4.6.2.39.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\UPPayAssistEx.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\UPPayPluginExPro.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\libs\Vuforia.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.github.chrisbanes.photoview\library\1.2.4\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.scwang.smartrefresh\SmartRefreshLayout\1.0.4-4\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-core-ui\24.2.1\jars\libs\internal_impl-24.2.1.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\cardview-v7\25.1.0\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.github.bumptech.glide\glide\3.7.0\9e9eeaf9948ee4d6c3ab354e8dc14368f16994a4\glide-3.7.0.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\webpsupport\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\recyclerview-v7\24.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-compat\25.3.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-fragment\24.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.google.firebase\firebase-common\9.8.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.dalong\refreshlayout\1.0.3\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.czp.arcProgressBar\ArcProgressBar\1.0.1\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.squareup.okhttp3\okhttp\3.7.0\6edbebdd8868708db718d15c09c4b28037fd487e\okhttp-3.7.0.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.google.android.gms\play-services-tasks\9.8.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\me.leolin\ShortcutBadger\1.1.19\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.kyleduo.switchbutton\library\1.4.0\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib-jre7\1.1.3-2\3fe54c7558c903868351ac79b792d152bca958f2\kotlin-stdlib-jre7-1.1.3-2.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.github.hackware1993\MagicIndicator\1.5.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.qihoo360.argusapm\argus-apm-okhttp\2.0.1.1007\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\animated-webp\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.r0adkll\slidableactivity\2.0.5\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\animated-base\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\imagepipeline\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\multidex\1.0.1\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.google.zxing\core\3.3.1\bd5bb06f4ae0fef8e67044131272905eb8895230\core-3.3.1.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-stdlib\1.1.3-2\9b44c139a4ec57031e0c84ba0e49ba16df6d801c\kotlin-stdlib-1.1.3-2.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.squareup.leakcanary\leakcanary-watcher\1.5.4\5e3dadce30fd748563219945d867a2e96f287931\leakcanary-watcher-1.5.4.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\org.aspectj\aspectjrt\1.8.10\1a14fe9e912f6e8bdbb5429b78b4090d8b47bc1\aspectjrt-1.8.10.jar;D:\sdk\extras\android\m2repository\com\android\support\support-annotations\25.3.0\support-annotations-25.3.0.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.tencent.bugly\crashreport\2.6.6.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.github.michaelye.easydialog\easydialog\1.4\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.sensorsdata.analytics.android\SensorsAnalyticsSDK-Runtime\1.0.2\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.scwang.smartrefresh\SmartRefreshHeader\1.0.4-4\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\design\24.0.0\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.squareup.haha\haha\2.0.3\640a438d2d415c056ca6a673ac26b183b044e160\haha-2.0.3.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-vector-drawable\24.2.1\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.squareup.okio\okio\1.12.0\3742beff8024d0a0073d284b7c5e4cbf73d99b25\okio-1.12.0.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.squareup.leakcanary\leakcanary-android\1.5.4\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.ogaclejapan.smarttablayout\utils-v4\1.6.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.baoyz.swipemenulistview\library\1.3.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.google.android.gms\play-services-basement\9.8.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\cn.bingoogolapple\bga-refreshlayout\1.1.7\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.jakewharton\butterknife-annotations\8.8.1\bc373fb6bc7bca3035041b924f158fd2b946ee8d\butterknife-annotations-8.8.1.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.sensorsdata.analytics.android\SensorsAnalyticsSDK\1.10.5\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.github.ctiao\DanmakuFlameMaster\0.4.4\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\it.sephiroth.android.library.horizontallistview\hlistview\1.3.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\cn.qqtheme.framework\Common\1.5.5\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.liulishuo.filedownloader\library\1.6.2\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-core-utils\24.2.1\jars\libs\internal_impl-24.2.1.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.jakewharton\butterknife\8.8.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.hyman\flowlayout-lib\1.1.2\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\fresco\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\animated-vector-drawable\24.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-core-ui\24.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\org.xutils\xutils\3.3.42\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.ogaclejapan.smarttablayout\library\1.6.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\fbcore\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-v4\24.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.squareup.leakcanary\leakcanary-analyzer\1.5.4\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.google.android.gms\play-services-appindexing\9.8.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\drawee\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\24.2.1\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\org.jetbrains\annotations\13.0\919f0dfe192fb4e063e7dacadee7f8bb9a2672a9\annotations-13.0.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\org.greenrobot\eventbus\3.0.0\ddd99896e9569eaababbe81b35d80e1b91c4ad85\eventbus-3.0.0.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-media-compat\24.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\in.srain.cube\ultra-ptr\1.0.11\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-core-utils\24.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.google.android.gms\play-services-base\9.8.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.tencent.bugly\nativecrashreport\3.3.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.bigkoo\convenientbanner\2.0.5\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-reflect\1.1.3-2\2104f139db2a2d230c529b004c34a0993c4c2f19\kotlin-reflect-1.1.3-2.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.github.hotchemi\permissionsdispatcher\3.0.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.qihoo360.argusapm\argus-apm-aop\2.0.1.1007\jars\classes.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.squareup.picasso\picasso\2.5.2\7446d06ec8d4f7ffcc53f1da37c95f200dcb9387\picasso-2.5.2.jar;C:\Users\Administrator.gradle\wrapper\dists\gradle-4.1-all\caches\modules-2\files-2.1\com.parse.bolts\bolts-tasks\1.4.0\d85884acf6810a3bbbecb587f239005cbc846dc4\bolts-tasks-1.4.0.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\jp.wasabeef\glide-transformations\1.2.1\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.qihoo360.argusapm\argus-apm-main\2.0.1.1007\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\cn.qqtheme.framework\WheelPicker\1.5.5\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-media-compat\24.2.1\jars\libs\internal_impl-24.2.1.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.facebook.fresco\imagepipeline-base\0.13.0\jars\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\exploded-aar\com.android.support\support-fragment\24.2.1\jars\libs\internal_impl-24.2.1.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-o2o\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-rangedatepicker\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-education\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\lib-quanzi\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-im\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-xiaoneng\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-ease-release_3.1.5\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-busmodule\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-core\build\intermediates\bundles\default\classes.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-education\build\intermediates\bundles\default\libs\liteavsdk.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\lib-quanzi\build\intermediates\bundles\default\libs\android-support-v8-renderscript.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\lib-quanzi\build\intermediates\bundles\default\libs\gpuimage.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\lib-quanzi\build\intermediates\bundles\default\libs\touch_image.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\aliyun-oss-sdk-android-2.3.0.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\CILPaySDK.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\GDTActionSDK.min.1.4.2.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\ixintui_pushsdk_v1.9.5.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\libammsdk.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\SaaS_AppAnalytics_Android_SDK_V4.0.13.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\testin-ab-v4.1.5.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\le_library\build\intermediates\bundles\default\libs\WXModule.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\open_sdk_r5788_lite.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\SocialSDK_QQ_Simplify.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\SocialSDK_Sina_Simplify.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\SocialSDK_sms.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\SocialSDK_WeChat_Simplify.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\SocialSDK_whatsapp.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\umeng_shareboard_widget.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\umeng_social_api.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\umeng_social_net.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\umeng_social_shareboard.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\umeng_social_shareview.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\umeng_social_tool.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-new_sdk_library\build\intermediates\bundles\default\libs\volley.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\libs\xiaoneng-mqtt.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\libs\xiaonengchatcore.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\libs\xiaonengchatui.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\libs\xiaonengnetwork.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\libs\xiaonengutil.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\libs\xiaonengv4.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-xiaonengChat\build\intermediates\bundles\default\libs\xiaonengxpush.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-ease-release_3.1.5\build\intermediates\bundles\default\libs\BaiduLBS_Android.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\ui-ease-release_3.1.5\build\intermediates\bundles\default\libs\hyphenatechat_3.1.5.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-core\build\intermediates\bundles\default\libs\android-async-http-1.4.3.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\Library\lib-core\build\intermediates\bundles\default\libs\gson-2.2.2.jar;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\argus_apm_ajx\longNameDebug\include_dir;D:\LeyouGitWorkspace\leyou-shop-18118\leyou-app-shop\trunk\app\build\intermediates\argus_apm_ajx\longNameDebug\exclude_dir;

at org.aspectj.weaver.AbstractReferenceTypeDelegate.getFormalTypeParametersFromOuterClass(AbstractReferenceTypeDelegate.java:113)
at org.aspectj.weaver.AbstractReferenceTypeDelegate.getFormalTypeParametersFromOuterClass(AbstractReferenceTypeDelegate.java:122)
at org.aspectj.weaver.bcel.BcelObjectType.ensureGenericSignatureUnpacked(BcelObjectType.java:775)
at org.aspectj.weaver.bcel.BcelObjectType.getSuperclass(BcelObjectType.java:231)
at org.aspectj.weaver.ReferenceType.getSuperclass(ReferenceType.java:987)
at org.aspectj.weaver.bcel.BcelWeaver.weaveParentsFor(BcelWeaver.java:1304)
at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1123)
at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.weaveQueuedEntries(AjPipeliningCompilerAdapter.java:514)
at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.afterCompiling(AjPipeliningCompilerAdapter.java:375)
at org.aspectj.ajdt.internal.compiler.CompilerAdapter.ajc$afterReturning$org_aspectj_ajdt_internal_compiler_CompilerAdapter$2$f9cc9ca0(CompilerAdapter.java:69)
at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:471)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:1051)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:274)
at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:187)
at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:112)
at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60)
at org.aspectj.tools.ajc.Main.run(Main.java:371)
at com.argusapm.gradle.internal.ajc.AjcWeaver.call(AjcWeaver.kt:76)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

              Argus-Apm [longNameDebug] end...                 

:app:transformClassesWithArgus_apm_ajxForLongNameDebug spend 40249ms
AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: local variable type mismatch: attempt to set or access a value of type int using a local variable of type android.content.Intent. This is symptomatic of .class transformation tools that ignore local variable information.","sources":[{}]}
AGPBI: {"kind":"error","text":"Uncaught translation error: com.android.dx.cf.code.SimException: local variable type mismatch: attempt to set or access a value of type int using a local variable of type java.lang.String. This is symptomatic of .class transformation tools that ignore local variable information.","sources":[{}]}
AGPBI: {"kind":"error","text":"2 errors; aborting","sources":[{}]}
:app:transformClassesWithDexForLongNameDebug FAILED
:app:transformClassesWithDexForLongNameDebug spend 1958ms

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:transformClassesWithDexForLongNameDebug'.

com.android.build.api.transform.TransformException: java.lang.RuntimeException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Return code 1 for dex process

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

  • Get more help at https://help.gradle.org

BUILD FAILED in 3m 14s

集成后,请求网络接口报错

2019-01-03 17:52:38.766 3094-3267/? E/amsglsc: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:334)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:196)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:356)
at java.net.Socket.connect(Socket.java:592)
at com.android.okhttp.internal.Platform.connectSocket(Platform.java:113)
at com.android.okhttp.Connection.connectSocket(Connection.java:196)
at com.android.okhttp.Connection.connect(Connection.java:172)
at com.android.okhttp.Connection.connectAndSetOwner(Connection.java:367)
at com.android.okhttp.OkHttpClient$1.connectAndSetOwner(OkHttpClient.java:130)
at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:329)
at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:246)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:457)
at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:126)
at com.amap.b.a.c.a.d.h(AndroidHttpConnectionFactory.java:148)
at com.amap.b.a.c.a.d.d(AndroidHttpConnectionFactory.java:192)
at com.amap.b.a.b.d.run(AsyncHttpRequestFactory.java:333)
at com.amap.b.a.b.c.b(AsyncHttpRequestFactory.java:79)
at com.amap.b.a.b.c.run(AsyncHttpRequestFactory.java:111)
at com.amap.b.a.d.b.run(BaseThreadFactory.java:44)

本地配置文件名字问题

ApmTask.java 中的APM_CONFIG_FILE 这个常量定义为“argus_debug_sdk_config.json”, 但如果是切换到sdk debug。手机中的配置文件名称变为“argus_apm_sdk_config.json”。这两个文件名不一致,导致切换到sdk debug时找不到本地配置文件。请问下这个文件名字是在哪个步骤确定的?在代码上没有看到。建议对这个做下兼容

java.lang.ClassNotFoundException

java.lang.ClassNotFoundException

  • 接入方式 api 'com.qihoo360.argusapm:argus-apm-main:3.0.1.1001'**
  • 报错机型 华为 EML AL00
  • 系统版本 Android 9

image

InflateException

运行Sample工程进入TestActivity,报错
android.view.InflateException: Binary XML file line #2: Error inflating class android.support.constraint.ConstraintLayout

项目编译不通过

我单独编译argus-apm-gradle项目不报错;
用IDEA导入ArgusAPM/argus-apm项目,
把gradle项目软连到buildSrc目录:
ln -s ../argus-apm-gradle/ buildSrc
打开argus-apm-sample/argusapm.gradle,
替换apply plugin: 'argusapm'为apply plugin: com.argusapm.gradle.AspectJPlugin
//apply plugin: 'argusapm'//aspectj的gradle插件名称,启用该插件 apply plugin: com.argusapm.gradle.AspectJPlugin//aspectj的gradle插件名称,启用该插件

执行./gradlew clean build
提示如下错误:
`Incremental java compilation is an incubating feature.
Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary configuration failure takes precedence.
java.lang.IllegalStateException: buildToolsVersion is not specified.
at com.google.common.base.Preconditions.checkState(Preconditions.java:176)
at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:610)
at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:571)
at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:568)
at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:55)
at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:47)
at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:567)
at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:564)
at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:93)
at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:82)
at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:44)
at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:79)
at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:30)
at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
at com.sun.proxy.$Proxy10.afterEvaluate(Unknown Source)
at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:67)
at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:61)
at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:540)
at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:93)
at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:47)
at org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:84)
at org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:75)
at org.gradle.execution.commandline.CommandLineTaskParser.parseTasks(CommandLineTaskParser.java:42)
at org.gradle.execution.TaskNameResolvingBuildConfigurationAction.configure(TaskNameResolvingBuildConfigurationAction.java:44)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$000(DefaultBuildConfigurationActionExecuter.java:25)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter$1.proceed(DefaultBuildConfigurationActionExecuter.java:54)
at org.gradle.execution.DefaultTasksBuildExecutionAction.configure(DefaultTasksBuildExecutionAction.java:44)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$000(DefaultBuildConfigurationActionExecuter.java:25)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter$1.proceed(DefaultBuildConfigurationActionExecuter.java:54)
at org.gradle.execution.ExcludedTaskFilteringBuildConfigurationAction.configure(ExcludedTaskFilteringBuildConfigurationAction.java:47)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
at org.gradle.execution.DefaultBuildConfigurationActionExecuter.select(DefaultBuildConfigurationActionExecuter.java:36)
at org.gradle.initialization.DefaultGradleLauncher$3.run(DefaultGradleLauncher.java:142)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:139)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:237)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

FAILURE: Build failed with an exception.

  • Where:
    Script '/Users/jbg168/buildSpace/ArgusAPM/argus-apm/argus-apm-sample/argusapm.gradle' line: 2

  • What went wrong:
    A problem occurred evaluating script.

com/android/build/gradle/AppPlugin

  • Try:
    Run with --info or --debug option to get more log output.

  • Exception is:
    org.gradle.api.GradleScriptException: A problem occurred evaluating script.
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:93)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl$2.run(DefaultScriptPluginFactory.java:177)
    at org.gradle.configuration.DefaultScriptTarget.addConfiguration(DefaultScriptTarget.java:74)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:182)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyScript(DefaultObjectConfigurationAction.java:102)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.access$000(DefaultObjectConfigurationAction.java:36)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction$1.run(DefaultObjectConfigurationAction.java:62)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:136)
    at org.gradle.api.internal.project.AbstractPluginAware.apply(AbstractPluginAware.java:46)
    at org.gradle.api.internal.project.ProjectScript.apply(ProjectScript.java:34)
    at org.gradle.api.Script$apply.callCurrent(Unknown Source)
    at build_81a2yzz37p2devsfq05819owb.run(/Users/jbg168/buildSpace/ArgusAPM/argus-apm/argus-apm-sample/build.gradle:3)
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:91)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl$2.run(DefaultScriptPluginFactory.java:177)
    at org.gradle.configuration.ProjectScriptTarget.addConfiguration(ProjectScriptTarget.java:77)
    at org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:182)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:38)
    at org.gradle.configuration.project.BuildScriptProcessor.execute(BuildScriptProcessor.java:25)
    at org.gradle.configuration.project.ConfigureActionsProjectEvaluator.evaluate(ConfigureActionsProjectEvaluator.java:34)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:55)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:540)
    at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:93)
    at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:47)
    at org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:84)
    at org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:75)
    at org.gradle.execution.commandline.CommandLineTaskParser.parseTasks(CommandLineTaskParser.java:42)
    at org.gradle.execution.TaskNameResolvingBuildConfigurationAction.configure(TaskNameResolvingBuildConfigurationAction.java:44)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$000(DefaultBuildConfigurationActionExecuter.java:25)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter$1.proceed(DefaultBuildConfigurationActionExecuter.java:54)
    at org.gradle.execution.DefaultTasksBuildExecutionAction.configure(DefaultTasksBuildExecutionAction.java:44)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter.access$000(DefaultBuildConfigurationActionExecuter.java:25)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter$1.proceed(DefaultBuildConfigurationActionExecuter.java:54)
    at org.gradle.execution.ExcludedTaskFilteringBuildConfigurationAction.configure(ExcludedTaskFilteringBuildConfigurationAction.java:47)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)
    at org.gradle.execution.DefaultBuildConfigurationActionExecuter.select(DefaultBuildConfigurationActionExecuter.java:36)
    at org.gradle.initialization.DefaultGradleLauncher$3.run(DefaultGradleLauncher.java:142)
    at org.gradle.internal.Factories$1.create(Factories.java:22)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
    at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:139)
    at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
    at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
    at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
    at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
    at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
    at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
    at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
    at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
    at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
    at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
    at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
    at org.gradle.util.Swapper.swap(Swapper.java:38)
    at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72)
    at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
    at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
    at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
    at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:237)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
    at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
    Caused by: java.lang.NoClassDefFoundError: com/android/build/gradle/AppPlugin
    at com.argusapm.gradle.internal.PluginConfig$Companion.init(PluginConfig.kt:20)
    at com.argusapm.gradle.AspectJPlugin.apply(AspectJPlugin.kt:19)
    at com.argusapm.gradle.AspectJPlugin.apply(AspectJPlugin.kt:12)
    at org.gradle.api.internal.plugins.ImperativeOnlyPluginApplicator.applyImperative(ImperativeOnlyPluginApplicator.java:35)
    at org.gradle.api.internal.plugins.RuleBasedPluginApplicator.applyImperative(RuleBasedPluginApplicator.java:43)
    at org.gradle.api.internal.plugins.DefaultPluginManager.doApply(DefaultPluginManager.java:137)
    at org.gradle.api.internal.plugins.DefaultPluginManager.apply(DefaultPluginManager.java:116)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyType(DefaultObjectConfigurationAction.java:123)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.applyPlugin(DefaultObjectConfigurationAction.java:107)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.access$100(DefaultObjectConfigurationAction.java:36)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction$2.run(DefaultObjectConfigurationAction.java:71)
    at org.gradle.api.internal.plugins.DefaultObjectConfigurationAction.execute(DefaultObjectConfigurationAction.java:136)
    at org.gradle.groovy.scripts.DefaultScript.apply(DefaultScript.java:111)
    at org.gradle.api.Script$apply.callCurrent(Unknown Source)
    at argusapm_4gzsv9xzx4li67egal159gdu5.run(/Users/jbg168/buildSpace/ArgusAPM/argus-apm/argus-apm-sample/argusapm.gradle:2)
    at org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:91)
    ... 83 more

BUILD FAILED

Total time: 4.01 secs
`

集成后没有数据

根据三分钟快速接入的文档集成,发现编译不成功,我看有好多对应的 issue 还没有解决。于是我就根据 FAQ 里第 12 条,按照一般的依赖库集成,集成后运行没问题,也有对应标识集成成功的日志,但是数据库里基本没什么数据。

测试手机:小米4,Android 6.0
集成版本:3.0.1.1001

测试生成的数据库:

apm.db.zip

ANR 检测

ANR你们是通过FileObserver检测"/data/anr"目录,请问如果对于没有root的Android5.0 以上的机器如何生效?

使用ASM插件,报找不到com.argusapm.android.core.job.func.FuncTrace

使用ASM插件,报找不到com.argusapm.android.core.job.func.FuncTrace

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/argusapm/android/core/job/func/FuncTrace;
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.argusapm.android.core.job.func.FuncTrace" on path: DexPathList[[zip file "/data/app/com.yqxue.yqxue-1/base.apk"],nativeLibraryDirectories=[/data/app/com.yqxue.yqxue-1/lib/arm, /data/app/com.yqxue.yqxue-1/base.apk!/lib/armeabi, /system/lib, /vendor/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at cn.jiguang.a.a.c.f.run(Unknown Source) 
2019-04-18 17:51:16.710 21954-22089/? E/AndroidRuntime: FATAL EXCEPTION: Thread-20
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/argusapm/android/core/job/func/FuncTrace;
at cn.jiguang.a.a.c.f.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.argusapm.android.core.job.func.FuncTrace" on path: DexPathList[[zip file "/data/app/com.yqxue.yqxue-1/base.apk"],nativeLibraryDirectories=[/data/app/com.yqxue.yqxue-1/lib/arm, /data/app/com.yqxue.yqxue-1/base.apk!/lib/armeabi, /system/lib, /vendor/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:380)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)

编译不通过

as:3.0.1 gradle4.1
classpath 'com.android.tools.build:gradle:3.0.1'

Error:com.android.builder.dexing.DexArchiveBuilderException: Failed to process ... app/build/intermediates/transforms/argus_apm_ajx/debug/14.jar
Error:com.android.builder.dexing.DexArchiveBuilderException: Error while dexing com/tencent/wxop/stat/common/k.class
Error:com.android.dx.cf.code.SimException: local variable type mismatch: attempt to set or access a value of type java.io.ByteArrayOutputStream using a local variable of type byte[]. This is symptomatic of .class transformation tools that ignore local variable information.
Error:Execution failed for task ':app:transformClassesWithDexBuilderForDebug'.

com.android.build.api.transform.TransformException: com.android.builder.dexing.DexArchiveBuilderException: com.android.builder.dexing.DexArchiveBuilderException: Failed to process ... app/build/intermediates/transforms/argus_apm_ajx/debug/14.jar

项目里含有腾讯bugly,把初始化代码写到了SampleApplication的attachBaseContext里了

360性能官方控制台未查询到数据

尊敬的项目Owner,

  感谢拥抱开源!
  发现一个问题,注册了一个工程,本地日志已经提示植入成功,但是从控制台未查询到相关数据。
  是未开放数据入口吗?还是客户端上报有什么规则?

谢谢解答

集成报错

1.Invalid empty classfile
2.com.android.tools.r8.CompilationFailedException: Compilation failed to complete
3.Caused by: com.android.builder.dexing.DexArchiveBuilderException: Failed to process D:\workspace\hyb\business_district\hyb_driver_android\app\build\intermediates\transforms\argus_apm_asm\dev1\debug\201

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.