libv2ray

package module
v0.0.0-...-d1094b7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 1, 2024 License: LGPL-3.0 Imports: 25 Imported by: 0

README

AndroidLibXrayLite

Build requirements

  • JDK
  • Android SDK
  • Go
  • gomobile

Build instructions

  1. git clone [repo] && cd AndroidLibXrayLite
  2. gomobile init
  3. go mod tidy -v
  4. gomobile bind -v -androidapi 19 -ldflags='-s -w' ./

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckVersionX

func CheckVersionX() string

CheckVersionX string This func will return libv2ray binding version and V2Ray version used.

func InitV2Env

func InitV2Env(envPath string, key string)

InitV2Env set v2 asset path

func MeasureOutboundDelay

func MeasureOutboundDelay(ConfigureFileContent string) (int64, error)

func TestConfig

func TestConfig(ConfigureFileContent string) error

Delegate Funcation

Types

type ProtectedDialer

type ProtectedDialer struct {
	// contains filtered or unexported fields
}

ProtectedDialer ...

func NewPreotectedDialer

func NewPreotectedDialer(p protectSet) *ProtectedDialer

NewPreotectedDialer ...

func (*ProtectedDialer) DestIpAddress

func (d *ProtectedDialer) DestIpAddress() net.IP

func (*ProtectedDialer) Dial

Dial exported as the protected dial method

func (*ProtectedDialer) Init

func (d *ProtectedDialer) Init(_ dns.Client, _ outbound.Manager)

Init implement internet.SystemDialer

func (*ProtectedDialer) IsVServerReady

func (d *ProtectedDialer) IsVServerReady() bool

func (*ProtectedDialer) PrepareDomain

func (d *ProtectedDialer) PrepareDomain(domainName string, closeCh <-chan struct{}, prefIPv6 bool)

PrepareDomain caches direct v2ray server host

func (*ProtectedDialer) PrepareResolveChan

func (d *ProtectedDialer) PrepareResolveChan()

func (*ProtectedDialer) ResolveChan

func (d *ProtectedDialer) ResolveChan() chan struct{}

type V2RayPoint

type V2RayPoint struct {
	SupportSet V2RayVPNServiceSupportsSet

	Vpoint    *v2core.Instance
	IsRunning bool

	DomainName           string
	ConfigureFileContent string
	AsyncResolve         bool
	// contains filtered or unexported fields
}

V2RayPoint V2Ray Point Server This is territory of Go, so no getter and setters!

func NewV2RayPoint

func NewV2RayPoint(s V2RayVPNServiceSupportsSet, adns bool) *V2RayPoint

NewV2RayPoint new V2RayPoint

func (*V2RayPoint) MeasureDelay

func (v *V2RayPoint) MeasureDelay() (int64, error)

func (V2RayPoint) QueryStats

func (v V2RayPoint) QueryStats(tag string, direct string) int64

Delegate Funcation

func (*V2RayPoint) RunLoop

func (v *V2RayPoint) RunLoop(prefIPv6 bool) (err error)

RunLoop Run V2Ray main loop

func (*V2RayPoint) StopLoop

func (v *V2RayPoint) StopLoop() (err error)

StopLoop Stop V2Ray main loop

type V2RayVPNServiceSupportsSet

type V2RayVPNServiceSupportsSet interface {
	Setup(Conf string) int
	Prepare() int
	Shutdown() int
	Protect(int) bool
	OnEmitStatus(int, string) int
}

V2RayVPNServiceSupportsSet To support Android VPN mode

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL