Skip to content

Commit 5fd5358

Browse files
author
RLibEx
committed
Bump version for 2.7 release
1 parent 87b52aa commit 5fd5358

File tree

15 files changed

+44
-4
lines changed

15 files changed

+44
-4
lines changed

java/AndHook.java

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
/**
1313
* @author rrrfff
14-
* @version 2.7.1
14+
* @version 2.7.2
1515
*/
1616
@SuppressWarnings({"unused", "WeakerAccess", "JniMissingFunction"})
1717
public final class AndHook {
@@ -315,7 +315,7 @@ public static void setObjectField(final Object obj, final String name,
315315
final Field f = findFieldHierarchically(obj.getClass(), name);
316316
if (f != null) {
317317
try {
318-
f.set(null, value);
318+
f.set(obj, value);
319319
} catch (final Exception e) {
320320
Log.e(AndHook.LOG_TAG, "failed to set instance field "
321321
+ name, e);
@@ -336,6 +336,20 @@ public static void setStaticObjectField(final Class<?> clazz,
336336
}
337337
}
338338

339+
public static Class<?> findClass(final String classname) {
340+
return findClass(classname, AndHook.class.getClassLoader());
341+
}
342+
343+
public static Class<?> findClass(final String classname, final ClassLoader loader) {
344+
try {
345+
return loader.loadClass(classname);
346+
} catch (final Exception e) {
347+
Log.e(AndHook.LOG_TAG, "failed to find class " + classname
348+
+ " on ClassLoader " + loader, e);
349+
}
350+
return null;
351+
}
352+
339353
public static Field findFieldHierarchically(final Class<?> clazz, final String name) {
340354
Field f = null;
341355
Class<?> c = clazz;
@@ -426,6 +440,10 @@ private static String asConstructor(final Class<?> clazz, final String method,
426440
boolean need_origin() default true;
427441
}
428442

443+
public static void applyHooks(final Class<?> holdClass) {
444+
applyHooks(holdClass, holdClass.getClassLoader());
445+
}
446+
429447
public static void applyHooks(final Class<?> holdClass,
430448
final ClassLoader loader) {
431449
AndHook.ensureClassInitialized(holdClass);

jniLibs/arm64-v8a/libAndHook.so

4.02 KB
Binary file not shown.

jniLibs/arm64-v8a/libAndHookCompat.so

0 Bytes
Binary file not shown.

jniLibs/armeabi-v7a/libAndHook.so

0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.

jniLibs/x86/libAndHook.so

0 Bytes
Binary file not shown.

jniLibs/x86_64/libAndHook.so

0 Bytes
Binary file not shown.

test/app/src/main/java/andhook/lib/AndHook.java

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
/**
1313
* @author rrrfff
14-
* @version 2.7.1
14+
* @version 2.7.2
1515
*/
1616
@SuppressWarnings({"unused", "WeakerAccess", "JniMissingFunction"})
1717
public final class AndHook {
@@ -315,7 +315,7 @@ public static void setObjectField(final Object obj, final String name,
315315
final Field f = findFieldHierarchically(obj.getClass(), name);
316316
if (f != null) {
317317
try {
318-
f.set(null, value);
318+
f.set(obj, value);
319319
} catch (final Exception e) {
320320
Log.e(AndHook.LOG_TAG, "failed to set instance field "
321321
+ name, e);
@@ -336,6 +336,20 @@ public static void setStaticObjectField(final Class<?> clazz,
336336
}
337337
}
338338

339+
public static Class<?> findClass(final String classname) {
340+
return findClass(classname, AndHook.class.getClassLoader());
341+
}
342+
343+
public static Class<?> findClass(final String classname, final ClassLoader loader) {
344+
try {
345+
return loader.loadClass(classname);
346+
} catch (final Exception e) {
347+
Log.e(AndHook.LOG_TAG, "failed to find class " + classname
348+
+ " on ClassLoader " + loader, e);
349+
}
350+
return null;
351+
}
352+
339353
public static Field findFieldHierarchically(final Class<?> clazz, final String name) {
340354
Field f = null;
341355
Class<?> c = clazz;
@@ -426,6 +440,10 @@ private static String asConstructor(final Class<?> clazz, final String method,
426440
boolean need_origin() default true;
427441
}
428442

443+
public static void applyHooks(final Class<?> holdClass) {
444+
applyHooks(holdClass, holdClass.getClassLoader());
445+
}
446+
429447
public static void applyHooks(final Class<?> holdClass,
430448
final ClassLoader loader) {
431449
AndHook.ensureClassInitialized(holdClass);

test/app/src/main/jniLibs/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Note
2+
Precompiled binaries is provided here.
3+
~~It is highly recommended that you use Visual Studio 2017 or later if you want to compile them yourself~~.
4+
The source code will be available to the public soon.
Binary file not shown.

0 commit comments

Comments
 (0)