allenymt / PrivacySentry

Android隐私合规整改检测工具,注解+Asm修改字节码的检测方案
MIT License
2.05k stars 262 forks source link

使用此库之后在使用阿里热修复 #100

Closed maoxiongdedidi closed 1 year ago

maoxiongdedidi commented 1 year ago

同时集成阿里热修复和此库,阿里热修复一直无法正常生成补丁,只有去掉次库引用之后才能正常生成补丁。有么有什么解决办法

maoxiongdedidi commented 1 year ago

阿里报错说是在他们的application调用了PrivacyClassProxy中的相关方法,因此猜测此库能否延迟初始化,防止出现这个问题

allenymt commented 1 year ago

黑名单里把 他们热修复的包名排掉就好了

maoxiongdedidi commented 1 year ago

并没有效果,还是报错 blackList = ["com.loc","com.amap.api","com.taobao.sophix"]
报错信息如下: Sophix Stub Application类中不得使用非Android SDK的类: [Lcom///PrivacyProxyResolver$Proxy;]\r" 阿里技术支持已经排查过 Sophix Stub Application类,说集成没有问题,有没有什么办法,帮忙看下

allenymt commented 1 year ago

Sophix Stub Application类中不得使用非Android SDK的类 , 这个类的包名是什么

allenymt commented 1 year ago

此库能否延迟初始化,防止出现这个问题 ?

可以延迟初始化的,不过延迟之后,部分敏感字段会一直拦截

maoxiongdedidi commented 1 year ago

类的包名就是com.taobao.sophix,阿里那边反馈说,是因为这个库在应用启动的时候就生效了,并且早于了热修复,所以他们那边就判定是已经在他们的application中调用了其他非Android SDK的类,这样就没法成功使用热修复功能了

allenymt commented 1 year ago

是会拦截Androidx 里的一些SDK,ContentProvider里的代码也会拦截,是可能会在热修执行代码之前就执行到我这个库,但是应该不影响热修复才对。

你要热修的代码是和application相关联的么

maoxiongdedidi commented 1 year ago

还没有使用功能呢,接入之后apk就打不开了