You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Android应用启动时启动Ktor Server?

在Android应用中启动Ktor服务器的实现尝试

我在项目中实现了一个Ktor Server模块,需要在应用启动时启动该服务器,以下是我的代码实现:

MainActivity.kt

class MainActivity : AppCompatActivity() {

    private val ktorServer = KtorServer()

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_camera)

        ktorServer.startServer()
    }

    override fun onDestroy() {
        super.onDestroy()
        ktorServer.stopServer()
    }
}

KtorServer.kt

class KtorServer {

    private var server: ApplicationEngine? = null

    fun startServer() {
        server = embeddedServer(Netty, port = 8080) {
            module()
        }.start(wait = false)
        // embeddedServer(Netty, port = 8080,host = "127.0.0.1", module = Application::module).start(wait = false)
    }

    private fun Application.module() {
        routing {
            get("/") {
                call.respondText("Hello, Ktor!", ContentType.Text.Plain)
            }
        }
    }

    fun stopServer() {
        server?.stop(1000, 10000)
    }
}

模块级build.gradle依赖配置

def ktor_version = '2.0.0'
implementation("io.ktor:ktor-server-core:$ktor_version")
implementation("io.ktor:ktor-server-netty:$ktor_version")
implementation("io.ktor:ktor-server-content-negotiation:$ktor_version")
implementation("io.ktor:ktor-serialization-kotlinx-json:$ktor_version")

内容的提问来源于stack exchange,提问作者Arnold Brown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 09:49:52