AndroidLibV2ray icon indicating copy to clipboard operation
AndroidLibV2ray copied to clipboard

Results 14 AndroidLibV2ray issues
Sort by recently updated
recently updated
newest added

hello, could you please say the meaning or according of this dir? @xiaokangwang https://github.com/xiaokangwang/AndroidLibV2ray/blob/master/interact.go#L288

貌似不支持x86模拟器运行呢,能把x86架构编译进库里吗?

在模拟器(Nexus 6P API 27(Android 8.1.0,API 27))上运行一会之后,vpnservice会被杀,期间网络不能正常访问。已测试多款模拟器,都出现该情况。但真机实测是正常的。出现的崩溃日志如下: 11-13 01:00:37.957 8316-0/com.package.test:V2RayVPN E/Go: (0x0,0x0) 11-13 01:00:37.957 8316-8354/com.package.test:V2RayVPN E/GoLog: (0x0,0x0) 11-13 01:00:37.961 8316-0/com.package.test:V2RayVPN E/Go: panic: runtime error: invalid memory address or nil pointer dereference...

Android 6.0以后系统支持多用户,分别为"主要用户"、"次要用户"、“访客”。以前的手机用户内置存储区在/data/data/packagename/中。但是现在的用户内置存储区在/data/user/userId/packagename/目录。比如,“主要用户”的userid为0,则它的私人内部存储区在/data/user/0/com.v2ray.ang/目录,而第一个“次要用户”的userid为10,它的私人内部存储区在/data/user/10/com.v2ray.ang/目录,以此类推。手机/data/data/packagename/目录仍然存在,应该是为了兼容性考虑,但是这个目录只有“主要用户”可以访问。所以导致了“次要用户”安装这个应用的时候,无法成功启动vpn服务。通过logcat可以看到,提示“fork exec /data/data/tun2sock : permission denied”。 希望作者能修改这个问题,让多用户的手机也可以安装使用。 获取用户内部存储目录有相关函数,但方便起见我做了如下修改,并测试,已经测试通过。“主要用户”、“次要用户”都可以成功运行。用户的userid可以通过uid/100000得到。CoreI/Status.go中的getDataDir()函数修改如下: func (v *Status) getDataDir() string { var datadir = "/data/data/org.kkdev.v2raygo/" if v.PackageName != "" { datadir = "/data/user/" + strconv.Itoa(os.Getuid()/100000) +...

在Android中,开启VPN后,OS仍会负责发起域名解析请求。libv2ray会将DNS请求当作UDP报文直接进行路由,而在默认使用8.8.8.8访问geoip:cn的情况下,在远端发送DNS请求会导致返回不适合本地的IP地址,导致网页访问缓慢或者返回了面向海外的页面。而在PC上,Socks客户端向服务端发送的只有域名信息,域名的解析由v2ray全权负责。tun2socks虽然将tun界面转换为了socks界面,却并不能良好的处理DNS请求,导致DNS请求全部被无脑转发、返回了不适合直连的CDN。比如,通过Actinium访问淘宝,在全局代理下会被重定向到国际版,而在PC上是正常的。原文一开始发在了v2ray/core下,但我感觉应该是libv2ray的实现方式有问题,和v2ray本身应该没有关系。所以稍加编辑、发在了这里。 环境: - 服务器端:2.47 - PC端:2.47,传入连接使用Socks协议。 - Android端:2.50+libv2ray 25+Actinium。 下面是我的猜测。 首先,Firefox在创建连接时是直接向v2ray发送的域名,本身并没有生成DNS请求。Socks协议允许客户端建立TCP连接时直接请求域名而无须预先将域名解析成IP地址,而Firefox则完全没有参与域名的解析过程,在访问某个页面时只是把域名直接发送给了Socks服务器。若访问的域名属于`geosite:cn`,则wireshark中可发现对该网站的DNS请求。若访问的域名不属于`geosite:cn`,wireshark中就不能发现对该网站的DNS请求,而v2ray的log中可见通过隧道向`8.8.8.8:53`发起的的DNS请求。真正生成DNS请求的应该是v2ray本身。V2ray将会通过路由规则来选择将DNS请求送给OS中设置的DNS服务器或v2ray的配置文件中指定的DNS服务器。 PC环境下Wireshark所获取的Socks报文如下。 ``` Transmission Control Protocol, Src Port: 14696, Dst Port: 1082, Seq: 1, Ack: 1, Len: 3 Socks Protocol...

见 https://github.com/2dust/v2rayNG/issues/26

在conf目录里conf_vpnservice.json conf_ws_vpnservice.json config_mobile.json三个配置文件中的#lib2ray里配置的是什么信息

LoadJNI里 System.loadLibrary("gojni")加载so库时报错 is missing DT_SONAME will use basename as a replacement: "libgojni.so"

虽然Actinium凉了很久 还有就是有具体编译教程吗 我编译总报错 怀疑是环境变量不对