Skip to content

Commit d5e2367

Browse files
aviraxpvvb2060
andauthored
Update README.md (#59)
Co-authored-by: vvb2060 <[email protected]>
1 parent 0df64f2 commit d5e2367

File tree

1 file changed

+18
-4
lines changed

1 file changed

+18
-4
lines changed

README.md

+18-4
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,28 @@
1-
# AndroidHiddenApiBypass
1+
# Android Hidden Api Bypass
22

33
[![Android CI status](https://github.com/LSPosed/AndroidHiddenApiBypass/actions/workflows/android.yml/badge.svg?branch=main)](https://github.com/LSPosed/AndroidHiddenApiBypass/actions/workflows/android.yml)
44
![](https://img.shields.io/badge/Android-1.0%20--%2016-blue.svg)
55
![](https://img.shields.io/maven-central/v/org.lsposed.hiddenapibypass/hiddenapibypass.svg)
66

77
Bypass restrictions on non-SDK interfaces.
88

9-
## Why AndroidHiddenApiBypass?
9+
## Why HiddenApiBypass?
1010

1111
- Pure Java: no native code used.
1212
- Reliable: does not rely on specific behaviors, so it will not be blocked like meta-reflection or `dexfile`.
13-
- Stable: does not rely on internal ART structures on Android 10+. `unsafe` and `setHiddenApiExemptions` are stable APIs.
13+
- Stable: does not rely on internal ART structures on Android 10+. `Unsafe` and `setHiddenApiExemptions` are stable APIs.
1414

15-
[How it works (Chinese)](https://lovesykun.cn/archives/android-hidden-api-bypass.html)
15+
## And LSPass?
16+
17+
- Fast: no I/O, initializing faster than HiddenApiBypass.
18+
- Safe: no `Unsafe`.
19+
- Unreliable: can be blocked as easily as meta-reflection.
20+
21+
## How it works
22+
23+
HiddenApiBypass: [Unsafe](https://lovesykun.cn/archives/android-hidden-api-bypass.html)
24+
25+
LSPass: [Property.of()](https://github.com/michalbednarski/LeakValue?tab=readme-ov-file#putting-it-all-together)
1626

1727
## Integration
1828

@@ -29,6 +39,10 @@ dependencies {
2939

3040
## Usage
3141

42+
This library has two variants of bypassing, they have the same API.
43+
When initializing, LSPass is faster than HiddenApiBypass, but LSPass maybe blocked in future Android releases.
44+
Replace `HiddenApiBypass` with `LSPass` if you do not want to use `Unsafe`.
45+
3246
1. Invoke a restricted method:
3347
```java
3448
HiddenApiBypass.invoke(ApplicationInfo.class, new ApplicationInfo(), "usesNonSdkApi"/*, args*/)

0 commit comments

Comments
 (0)