AtriKotlin

September 2, 2022 · View on GitHub

使用Kotlin编写AtriQQ插件 (未完善)

示例

object MyPlugin: Plugin("Name") {
    override fun enable() {
        info("Plugin from Kotlin/Native")
    }

    override fun unload() {
        info("Unloading...")
    }
}

// 未来将会优化
@Suppress("unused")
@CName("kotlin_init")
fun onInit(): CPointer<CFunction<() -> CValue<PluginInstance>>> {
    return staticCFunction { ->
        MyPlugin.toNativeInstance()
    }
}

Build

首先在gradle添加自己的平台, 如macosArm64, 将其编译为静态库: ./gradlew linkDebugStaticXXX

然后运行cargo build即可, 生成的动态库位于target/debug(release)/目录下, 将动态库放入AtriQQplugins目录下即可