shuaiweican

Results 10 comments of shuaiweican

I try to use "/system/bin/screencap" to get the screen capture,but still doesn't work.My code looks like this unsigned int\* readBuffer(void) { FILE\* stream; //int status; int count=1024; int total=0; memset(buf,0,displayInfo.size);...

> 有没有兴趣PR一个 原本打算基于RxJava1.x实现一个,但是我们这边有些场景需要分析调用链,比如`subscribeOn(Schedulers.io).observeOn(AndroidSchedulers.mainThread).map.subscribeOn(Schedulers.io).observeOn(AndroidSchedulers.mainThread)`这种场景, 我实现了另外一种方案,通过`rx.plugins.RxJavaObservableExecutionHook#onSubscribeStart`hook RxJava的subscribe调用,然后通过反射分析出调用链,再根据调用链分析是否存在多余线程调度。相对于在运行时减少线程调度,改为在开发调试阶段发现问题并报告问题,目前还在观察效果

gradle错误提示中显示 Caused by: com.android.builder.dexing.DexArchiveBuilderException: Error while dexing com/alibaba/sdk/android/utils/c.class 这个类位于`com.aliyun.ams:alicloud-android-utils:1.1.3`包中 会不会和HookProguard有关?

对比了jar包中的和transform后有问题的com/alibaba/sdk/android/utils/c.class ![image](https://user-images.githubusercontent.com/3433961/119467190-deb39100-bd77-11eb-9a71-ecc13133e5d5.png) 唯一的区别是正常的MAXSTACK为3,有问题时MAXSTACK为2,为什么MAXSTACK会变,还在排查中,看看大佬有没有什么建议或思路

Matrix也有类似的问题,并且有个fix,https://github.com/Tencent/matrix/pull/201/files

我接入了`bytex.method_call_opt`组件,同时关掉bytex的就好了。目前判断可能是ASM的bug,手工提取`com.aliyun.ams:alicloud-android-utils:1.1.3`包中的`com.alibaba.sdk.android.utils.c`类,编写如下测试代码,只是简单的读取`com.alibaba.sdk.android.utils.c`类然后输出,没做任何处理,输出的 c.b函数的`MAXSTACK`从3变成了2 ``` public class TestAsm { public static void main(String[] args) throws IOException { ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_MAXS); FileInputStream fileInputStream=new FileInputStream(new File("D:\\temp\\c.class")); ClassReader classReader = new ClassReader(fileInputStream); classReader.accept(cw,0);...

com.alibaba.sdk.android.utils.c类中的 c.b函数反编译如下 ``` private boolean b() { boolean var1 = true; try { Class var2 = Class.forName("com.ut.mini.UTAnalytics"); } catch (Throwable var3) { Log.e("Utils:DataTracker", "ut not exist", var3); var1 = false;...

针对白名单中的class,是否可以不经过ASM,直接输出fileData.getBytes()的数据?看目前ClassFileTransformer#handle的逻辑,即使是白名单中的class,也会经过ASM过一遍

can i use ``` JSC::Options::jitMemoryReservationSize() ``` to change the default jit memory?

I found that we can set environment variables to set default values of JSC::Options ``` Os.setenv("JSC_jitMemoryReservationSize", "16777216", true); ```