- checkAccessibilityEnabled(Context, String) - 类 中的方法com.lahm.library.AccessibilityServicesCheckUtil
-
- checkByCreateLocalServerSocket(String, VirtualCheckCallback) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
- checkByHasSameUid(VirtualCheckCallback) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
Android系统一个app一个uid
如果同一uid下有两个进程对应的包名,在"/data/data"下有两个私有目录,则该应用被多开了
- checkByMultiApkPackageName(VirtualCheckCallback) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
运行被克隆的应用,该应用会加载多开应用的so库
检测已经加载的so里是否包含这些应用的包名
- checkByOriginApkPackageName(Context, VirtualCheckCallback) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
检测原始的包名,多开应用会hook处理getPackageName方法
顺着这个思路,如果在应用列表里出现了同样的包,那么认为该应用被多开了
- checkByPortListening(String, VirtualCheckCallback) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
已过时。
- checkByPrivateFilePath(Context, VirtualCheckCallback) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
通过检测app私有目录,多开后的应用路径会包含多开软件的包名
- checkByTopActivity(Context) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
- checkByTopTask(Context) - 类 中的方法com.lahm.library.VirtualApkCheckUtil
-
TopActivity的检查顶层task的思路
https://github.com/109021017/android-TopActivity
TopActivity作为另一个进程(观察者的角度)
能够正确识别多开软件的正确包名,类名
这也是为什么能知道使用多开分身app多开后的应用包名是随机的。
- checkHasLoadSO(String) - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsBeingTracedByC() - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsBeingTracedByJava() - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsDebug(Context) - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsDebuggerConnected() - 类 中的方法com.lahm.library.SecurityCheckUtil
-
java法检测是否连上调试器
- checkIsDebugVersion(Context) - 类 中的方法com.lahm.library.SecurityCheckUtil
-
检测app是否为debug版本
- checkIsPortUsing(String, int) - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsRoot() - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsRunningInEmulator(Context, EmulatorCheckCallback) - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsRunningInVirtualApk(String, VirtualCheckCallback) - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkIsUsbCharging(Context) - 类 中的方法com.lahm.library.SecurityCheckUtil
-
usb充电辅助判断
- checkIsXposedExist() - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- CheckResult - com.lahm.library中的类
-
- CheckResult(int, String) - 类 的构造器com.lahm.library.CheckResult
-
- checkSignature(Context) - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- checkXposedExistAndDisableIt() - 类 中的静态方法com.lahm.library.EasyProtectorLib
-
- com.lahm.library - 程序包 com.lahm.library
-
- CommandUtil - com.lahm.library中的类
-
Project Name:EasyProtector
Package Name:com.lahm.library
Created by lahm on 2018/6/8 16:23 .