Closed wilder-ness closed 6 years ago
public boolean checkByHasSameUid() { String filter = getUidStrFormat(); String result = CommandUtil.getSingleInstance().exec("ps"); if (result == null || result.isEmpty()) { return false; } String[] lines = result.split("\n"); if (lines == null || lines.length <= 0) { return false; } int exitDirCount = 0; for (int i = 0; i < lines.length; i++) { ### //如果filter 为空 contains 会报空指针异常 if (lines[i].contains(filter)) { int pkgStartIndex = lines[i].lastIndexOf(" "); String processName = lines[i].substring(pkgStartIndex <= 0 ? 0 : pkgStartIndex + 1, lines[i].length()); File dataFile = new File(String.format("/data/data/%s", processName, Locale.CHINA)); if (dataFile.exists()) { exitDirCount++; } } } return exitDirCount > 1; }
就是这个bug帮助我多了一条检测模拟器的思路,但是这个bug就忘记改了,谢谢你的提醒
对了- 还有个思路。。就是某些分身软件的 appName 后面会加分身两个字。这个并不是身靠谱的检测方式。 比如多开分身,还有这个多开分身检测不出来。
我想问个问题。就是这类的分身软件创建的app 获取的packageInfo 这里的内容是能作假的么?