This is a wrapper around Hysteria2 to improve the client development experience.
- This repository has few maintainers. If you do not report a bug or initiate a PR, your issue will be ignored.
- This repository does not guarantee API stability, you need to adapt it yourself.
- This repository is only compatible with the latest release of Hysteria2.
Compile script. It is recommended to always use this script to compile libHysteria2. We will not answer questions caused by using other compilation methods.
python3 build/main.py android
python3 build/main.py apple gomobile
python3 build/main.py apple go
python3 build/main.py linux
python3 build/main.py windows
use gomobile .
Need "iOS Simulator Runtime".
This is the best choice for general scenarios and will not conflict with other frameworks.
Supports iOS, iOSSimulator, macOS, macCatalyst.
But it is not possible to set the minimum macOS version, which will cause some warnings when compiling. And it does not support tvOS.
Need "iOS Simulator Runtime" and "tvOS Simulator Runtime".
Support more compilation options, output c header files.
This works well when you use ffi for integration. For example, integration with swift, kotlin, dart.
Support iOS, iOSSimulator, macOS, tvOS.
Note: The product LibHysteria2.xcframework
does not contain module.modulemap. When using swift, you need to create a bridge file.
depend on clang and clang++.
depend on LLVM MinGW, you can install it using winget.
winget install MartinStorsjo.LLVM-MinGW.UCRT
Used to solve the socket protect problem on Android.
Test config on your computer
Only executed on iOS, GC is initiated once a second. This can alleviate memory pressure on iOS.
Start and stop hysteria2 instances.
export nodep.
export hysteria2.
This repository is based on the MIT License.