diff --git a/app/src/main/java/io/nekohasekai/sagernet/group/RawUpdater.kt b/app/src/main/java/io/nekohasekai/sagernet/group/RawUpdater.kt index a34967b..df481a8 100644 --- a/app/src/main/java/io/nekohasekai/sagernet/group/RawUpdater.kt +++ b/app/src/main/java/io/nekohasekai/sagernet/group/RawUpdater.kt @@ -285,7 +285,12 @@ object RawUpdater : GroupUpdater() { "vmess", "vless" -> { val isVLESS = proxy["type"].toString() == "vless" - val bean = VMessBean().apply { if (isVLESS) alterId = -1 } + val bean = VMessBean().apply { + if (isVLESS) { + alterId = -1 // make it VLESS + packetEncoding = 2 // clash meta default XUDP + } + } for (opt in proxy) { when (opt.key.replace("_", "-")) { "name" -> bean.name = opt.value?.toString() @@ -300,6 +305,14 @@ object RawUpdater : GroupUpdater() { "flow" -> if (isVLESS) bean.encryption = opt.value as String + "xudp" -> if (isVLESS) { + if (opt.value.toString() == "false") { + bean.packetEncoding = 0 + } else { + bean.packetEncoding = 2 + } + } + "network" -> { bean.type = opt.value as String // Clash "network" fix