diff --git a/mobile/src/main/java/com/github/shadowsocks/App.kt b/mobile/src/main/java/com/github/shadowsocks/App.kt index f3ddbfc5..67886b18 100644 --- a/mobile/src/main/java/com/github/shadowsocks/App.kt +++ b/mobile/src/main/java/com/github/shadowsocks/App.kt @@ -137,7 +137,7 @@ class App : Application() { // handle data restored if (DataStore.directBootAware && UserManagerCompat.isUserUnlocked(this)) DirectBoot.update() - TcpFastOpen.enabled(DataStore.publicStore.getBoolean(Key.tfo, TcpFastOpen.sendEnabled)) + TcpFastOpen.enabledAsync(DataStore.publicStore.getBoolean(Key.tfo, TcpFastOpen.sendEnabled)) if (DataStore.publicStore.getLong(Key.assetUpdateTime, -1) != info.lastUpdateTime) { val assetManager = assets for (dir in arrayOf("acl", "overture")) diff --git a/mobile/src/main/java/com/github/shadowsocks/utils/TcpFastOpen.kt b/mobile/src/main/java/com/github/shadowsocks/utils/TcpFastOpen.kt index 49c2781d..b2f036ea 100644 --- a/mobile/src/main/java/com/github/shadowsocks/utils/TcpFastOpen.kt +++ b/mobile/src/main/java/com/github/shadowsocks/utils/TcpFastOpen.kt @@ -52,4 +52,5 @@ object TcpFastOpen { "else", " echo Failed.", "fi"), null, true)?.joinToString("\n") + fun enabledAsync(value: Boolean) = thread { enabled(value) }.join(1000) }