Android GUI proxy utility (Empowered by sing-box)
Kotlin
591
1,079 commits
updated Oct 10, 2026
免责声明:本项目仅用于技术研究与代码学习之目的,不提供任何形式的网络代理服务。请勿将本项目用于违反当地法律法规的任何活动。请勿在生产环境中使用本项目,使用者应自行承担使用本项目可能带来的全部风险。若您下载或引用本项目,请在 24 小时内自行删除相关内容,并避免长期存储、分享或传播本项目的任何部分。作者保留随时修改、更新或移除本项目及其内容的权利,恕不另行通知。
Disclaimer: This project is intended solely for technical research and code learning purposes and does not provide any form of network proxy service. Please do not use this project for any activities that violate local laws and regulations. Do not use this project in production environments. Users are fully responsible for any risks that may arise from using this project. If you download or reference this project, please delete all related content within 24 hours and avoid long-term storage, distribution, or dissemination of any part of this project. The author reserves the right to modify, update, or remove any part of this project or its contents at any time without prior notice.
1.7.0 is signed with a new key and starts with a fresh database: uninstall older versions first, then add your subscriptions again. 1.7.0 使用新的签名密钥,数据库也会重新开始:请先卸载旧版本,再重新添加订阅。
https://github.com/throneproj/ThroneForAndroid/issues
.thrbackup format, restorable on either side: save, share or sync over WebDAV
{
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"download": {
"mode": "auto",
"host": "b.yourdomain.com",
"path": "/xhttp",
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"server": "$(ip_or_domain_of_your_cdn)",
"server_port": 443,
"tls": {
"enabled": true,
"server_name": "b.yourdomain.com",
"alpn": "h2",
"utls": {
"enabled": true,
"fingerprint": "chrome"
}
}
}
}
{
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"download": {
"mode": "auto",
"host": "example.com",
"path": "/xhttp",
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"server": "$(ip_or_domain_of_your_cdn)",
"server_port": 443,
"tls": {
"enabled": true,
"server_name": "example.com",
"reality": {
"enabled": true,
"public_key": "$(your_publicKey)",
"short_id": "$(your_shortId)"
},
"utls": {
"enabled": true,
"fingerprint": "chrome"
}
}
}
}
仅支持解析出站,即节点。分流规则等信息会被忽略。
Only resolving outbound, i.e. nodes, is supported. Information such as diversion rules are ignored.
Core: ThroneCore, built from the THRONE_CORE_REF commit pinned in nb4a.properties(核心版本以 nb4a.properties 中的 THRONE_CORE_REF 为准):
Android GUI:
Android GUI proxy utility (Empowered by sing-box)
Kotlin
591
1,079 commits
updated Oct 10, 2026
免责声明:本项目仅用于技术研究与代码学习之目的,不提供任何形式的网络代理服务。请勿将本项目用于违反当地法律法规的任何活动。请勿在生产环境中使用本项目,使用者应自行承担使用本项目可能带来的全部风险。若您下载或引用本项目,请在 24 小时内自行删除相关内容,并避免长期存储、分享或传播本项目的任何部分。作者保留随时修改、更新或移除本项目及其内容的权利,恕不另行通知。
Disclaimer: This project is intended solely for technical research and code learning purposes and does not provide any form of network proxy service. Please do not use this project for any activities that violate local laws and regulations. Do not use this project in production environments. Users are fully responsible for any risks that may arise from using this project. If you download or reference this project, please delete all related content within 24 hours and avoid long-term storage, distribution, or dissemination of any part of this project. The author reserves the right to modify, update, or remove any part of this project or its contents at any time without prior notice.
1.7.0 is signed with a new key and starts with a fresh database: uninstall older versions first, then add your subscriptions again. 1.7.0 使用新的签名密钥,数据库也会重新开始:请先卸载旧版本,再重新添加订阅。
https://github.com/throneproj/ThroneForAndroid/issues
.thrbackup format, restorable on either side: save, share or sync over WebDAV
{
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"download": {
"mode": "auto",
"host": "b.yourdomain.com",
"path": "/xhttp",
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"server": "$(ip_or_domain_of_your_cdn)",
"server_port": 443,
"tls": {
"enabled": true,
"server_name": "b.yourdomain.com",
"alpn": "h2",
"utls": {
"enabled": true,
"fingerprint": "chrome"
}
}
}
}
{
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"download": {
"mode": "auto",
"host": "example.com",
"path": "/xhttp",
"no_grpc_header": false, // stream-up/one
"x_padding_bytes": "100-10000",
"sc_max_each_post_bytes": 1000000, // packet-up only
"sc_min_posts_interval_ms": 30, // packet-up only
"xmux": {
"max_concurrency": "16-32",
"max_connections": "0-0",
"c_max_reuse_times": "0-0",
"h_max_request_times": "600-900",
"h_max_reusable_secs": "1800-3000",
"h_keep_alive_period": 0
},
"x_padding_obfs_mode": false,
"x_padding_key": "",
"x_padding_header": "",
"x_padding_placement": "",
"x_padding_method": "",
"uplink_http_method": "",
"session_placement": "",
"session_key": "",
"seq_placement": "",
"seq_key": "",
"uplink_data_placement": "",
"uplink_data_key": "",
"uplink_chunk_size": 0,
"server": "$(ip_or_domain_of_your_cdn)",
"server_port": 443,
"tls": {
"enabled": true,
"server_name": "example.com",
"reality": {
"enabled": true,
"public_key": "$(your_publicKey)",
"short_id": "$(your_shortId)"
},
"utls": {
"enabled": true,
"fingerprint": "chrome"
}
}
}
}
仅支持解析出站,即节点。分流规则等信息会被忽略。
Only resolving outbound, i.e. nodes, is supported. Information such as diversion rules are ignored.
Core: ThroneCore, built from the THRONE_CORE_REF commit pinned in nb4a.properties(核心版本以 nb4a.properties 中的 THRONE_CORE_REF 为准):
Android GUI: