Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| dc36986255 | |||
| 5651e002c4 | |||
| 4e7849d1cb | |||
| 9e3dba8dbe | |||
| 79ba41354e | |||
| 85e866d462 |
@@ -18,8 +18,8 @@ android {
|
|||||||
minSdkVersion 21
|
minSdkVersion 21
|
||||||
targetSdkVersion Integer.parseInt("$targetSdkVer")
|
targetSdkVersion Integer.parseInt("$targetSdkVer")
|
||||||
multiDexEnabled true
|
multiDexEnabled true
|
||||||
versionCode 486
|
versionCode 488
|
||||||
versionName "1.7.26"
|
versionName "1.7.28"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (props["sign"]) {
|
if (props["sign"]) {
|
||||||
|
|||||||
@@ -6,7 +6,8 @@ enum class EConfigType(val value: Int, val protocolScheme: String) {
|
|||||||
SHADOWSOCKS(3, "ss://"),
|
SHADOWSOCKS(3, "ss://"),
|
||||||
SOCKS(4, "socks://"),
|
SOCKS(4, "socks://"),
|
||||||
VLESS(5, "vless://"),
|
VLESS(5, "vless://"),
|
||||||
TROJAN(6, "trojan://");
|
TROJAN(6, "trojan://"),
|
||||||
|
WIREGUARD(7, "wireguard://");
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
fun fromInt(value: Int) = values().firstOrNull { it.value == value }
|
fun fromInt(value: Int) = values().firstOrNull { it.value == value }
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ data class ServerConfig(
|
|||||||
vnext = listOf(V2rayConfig.OutboundBean.OutSettingsBean.VnextBean(
|
vnext = listOf(V2rayConfig.OutboundBean.OutSettingsBean.VnextBean(
|
||||||
users = listOf(V2rayConfig.OutboundBean.OutSettingsBean.VnextBean.UsersBean())))),
|
users = listOf(V2rayConfig.OutboundBean.OutSettingsBean.VnextBean.UsersBean())))),
|
||||||
streamSettings = V2rayConfig.OutboundBean.StreamSettingsBean()))
|
streamSettings = V2rayConfig.OutboundBean.StreamSettingsBean()))
|
||||||
EConfigType.CUSTOM ->
|
EConfigType.CUSTOM, EConfigType.WIREGUARD ->
|
||||||
return ServerConfig(configType = configType)
|
return ServerConfig(configType = configType)
|
||||||
EConfigType.SHADOWSOCKS, EConfigType.SOCKS, EConfigType.TROJAN ->
|
EConfigType.SHADOWSOCKS, EConfigType.SOCKS, EConfigType.TROJAN ->
|
||||||
return ServerConfig(
|
return ServerConfig(
|
||||||
|
|||||||
@@ -74,14 +74,18 @@ data class V2rayConfig(
|
|||||||
var response: Response? = null,
|
var response: Response? = null,
|
||||||
/*DNS*/
|
/*DNS*/
|
||||||
val network: String? = null,
|
val network: String? = null,
|
||||||
val address: String? = null,
|
val address: Any? = null,
|
||||||
val port: Int? = null,
|
val port: Int? = null,
|
||||||
/*Freedom*/
|
/*Freedom*/
|
||||||
var domainStrategy: String? = null,
|
var domainStrategy: String? = null,
|
||||||
val redirect: String? = null,
|
val redirect: String? = null,
|
||||||
val userLevel: Int? = null,
|
val userLevel: Int? = null,
|
||||||
/*Loopback*/
|
/*Loopback*/
|
||||||
val inboundTag: String? = null) {
|
val inboundTag: String? = null,
|
||||||
|
/*Wireguard*/
|
||||||
|
val secretKey: String? = null,
|
||||||
|
val peers: List<WireGuardBean>? = null,
|
||||||
|
) {
|
||||||
|
|
||||||
data class VnextBean(var address: String = "",
|
data class VnextBean(var address: String = "",
|
||||||
var port: Int = DEFAULT_PORT,
|
var port: Int = DEFAULT_PORT,
|
||||||
@@ -113,6 +117,9 @@ data class V2rayConfig(
|
|||||||
}
|
}
|
||||||
|
|
||||||
data class Response(var type: String)
|
data class Response(var type: String)
|
||||||
|
|
||||||
|
data class WireGuardBean(var publicKey: String = "",
|
||||||
|
var endpoint: String = "")
|
||||||
}
|
}
|
||||||
|
|
||||||
data class StreamSettingsBean(var network: String = DEFAULT_NETWORK,
|
data class StreamSettingsBean(var network: String = DEFAULT_NETWORK,
|
||||||
@@ -286,6 +293,8 @@ data class V2rayConfig(
|
|||||||
|| protocol.equals(EConfigType.SOCKS.name, true)
|
|| protocol.equals(EConfigType.SOCKS.name, true)
|
||||||
|| protocol.equals(EConfigType.TROJAN.name, true)) {
|
|| protocol.equals(EConfigType.TROJAN.name, true)) {
|
||||||
return settings?.servers?.get(0)?.address
|
return settings?.servers?.get(0)?.address
|
||||||
|
} else if (protocol.equals(EConfigType.WIREGUARD.name, true)) {
|
||||||
|
return settings?.peers?.get(0)?.endpoint?.substringBeforeLast(":")
|
||||||
}
|
}
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
@@ -298,6 +307,8 @@ data class V2rayConfig(
|
|||||||
|| protocol.equals(EConfigType.SOCKS.name, true)
|
|| protocol.equals(EConfigType.SOCKS.name, true)
|
||||||
|| protocol.equals(EConfigType.TROJAN.name, true)) {
|
|| protocol.equals(EConfigType.TROJAN.name, true)) {
|
||||||
return settings?.servers?.get(0)?.port
|
return settings?.servers?.get(0)?.port
|
||||||
|
} else if (protocol.equals(EConfigType.WIREGUARD.name, true)) {
|
||||||
|
return settings?.peers?.get(0)?.endpoint?.substringAfterLast(":")?.toInt()
|
||||||
}
|
}
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
@@ -311,6 +322,8 @@ data class V2rayConfig(
|
|||||||
return settings?.servers?.get(0)?.password
|
return settings?.servers?.get(0)?.password
|
||||||
} else if (protocol.equals(EConfigType.SOCKS.name, true)) {
|
} else if (protocol.equals(EConfigType.SOCKS.name, true)) {
|
||||||
return settings?.servers?.get(0)?.users?.get(0)?.pass
|
return settings?.servers?.get(0)?.users?.get(0)?.pass
|
||||||
|
} else if (protocol.equals(EConfigType.WIREGUARD.name, true)) {
|
||||||
|
return settings?.secretKey
|
||||||
}
|
}
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
@@ -426,12 +439,10 @@ data class V2rayConfig(
|
|||||||
|
|
||||||
fun getProxyOutbound(): OutboundBean? {
|
fun getProxyOutbound(): OutboundBean? {
|
||||||
outbounds.forEach { outbound ->
|
outbounds.forEach { outbound ->
|
||||||
if (outbound.protocol.equals(EConfigType.VMESS.name, true) ||
|
EConfigType.values().forEach {
|
||||||
outbound.protocol.equals(EConfigType.VLESS.name, true) ||
|
if (outbound.protocol.equals(it.name, true)) {
|
||||||
outbound.protocol.equals(EConfigType.SHADOWSOCKS.name, true) ||
|
return outbound
|
||||||
outbound.protocol.equals(EConfigType.SOCKS.name, true) ||
|
}
|
||||||
outbound.protocol.equals(EConfigType.TROJAN.name, true)) {
|
|
||||||
return outbound
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return null
|
return null
|
||||||
|
|||||||
@@ -486,7 +486,7 @@ object AngConfigManager {
|
|||||||
val json = Gson().toJson(vmessQRCode)
|
val json = Gson().toJson(vmessQRCode)
|
||||||
Utils.encode(json)
|
Utils.encode(json)
|
||||||
}
|
}
|
||||||
EConfigType.CUSTOM -> ""
|
EConfigType.CUSTOM, EConfigType.WIREGUARD -> ""
|
||||||
EConfigType.SHADOWSOCKS -> {
|
EConfigType.SHADOWSOCKS -> {
|
||||||
val remark = "#" + Utils.urlEncode(config.remarks)
|
val remark = "#" + Utils.urlEncode(config.remarks)
|
||||||
val pw = Utils.encode("${outbound.getSecurityEncryption()}:${outbound.getPassword()}")
|
val pw = Utils.encode("${outbound.getSecurityEncryption()}:${outbound.getPassword()}")
|
||||||
|
|||||||
@@ -46,7 +46,7 @@
|
|||||||
<string name="server_lab_more_function">انتقال</string>
|
<string name="server_lab_more_function">انتقال</string>
|
||||||
<string name="server_lab_head_type">نوع head</string>
|
<string name="server_lab_head_type">نوع head</string>
|
||||||
<string name="server_lab_mode_type">حالت gRPC</string>
|
<string name="server_lab_mode_type">حالت gRPC</string>
|
||||||
<string name="server_lab_request_host">درخواست میزبان (میزبان/میزبان ws/ یزبان h2)/امنیت QUIC</string>
|
<string name="server_lab_request_host">درخواست میزبان (میزبان/میزبان ws/ میزبان h2)/امنیت QUIC</string>
|
||||||
<string name="server_lab_path">مسیر (مسیر ws/ مسیر h2) کلید QUIC/دانه kcp/نامخدمات gRPC</string>
|
<string name="server_lab_path">مسیر (مسیر ws/ مسیر h2) کلید QUIC/دانه kcp/نامخدمات gRPC</string>
|
||||||
<string name="server_lab_stream_security">tls</string>
|
<string name="server_lab_stream_security">tls</string>
|
||||||
<string name="server_lab_stream_fingerprint" translatable="false">uTLS</string>
|
<string name="server_lab_stream_fingerprint" translatable="false">uTLS</string>
|
||||||
|
|||||||
Reference in New Issue
Block a user