Я нашел несколько классов в каталоге defpackage, но они не перечислены с приведенным ниже кодом:
log("load script")
Java.perform(function() {
log("load java")
var clzlst = []
Java.enumerateLoadedClasses({
onMatch: function(clzname) {
clzlst.push(clzname)
},
onComplete: function(e) {
console.log("<<<<onComplete");
}
});
log(clzlst.length)
clzlst.forEach(function (clzname) {
if (clzname.includes("abcd")) {
log("found clz:" + clzname) // this line not been hitted.
}
});
var hook = Java.use("abcd");
var methods = hook.class.getDeclaredMethods();
hook.$dispose();
methods.forEach(function (method) {
var name = method.toString();
log(name) // this line hitted
});
});
function log(msg) {
console.log(msg)
}
Классы загруженного списка не включают целевой класс (например, abcd), но если я вызываю Java .use ("abcd"), я могу успешно получить доступ к этому классу.
Я предполагаю, что этот класс все еще не загружается! как я могу перечислить все классы, даже если они не были загружены?