Commit 5dd418a7 authored by Him188's avatar Him188

Update guide

parent 430b5d1c
# Mirai Guide - Quick Start # Mirai Guide - Quick Start
由于Mirai项目在快速推进中,因此内容时有变动,本文档的最后更新日期为```2020-02-29```,对应版本```0.23.0``` 由于 mirai 项目在快速推进中,因此内容时有变动,本文档的最后更新日期为```2020/3/1```,对应版本```0.23.0```
本文适用于对kotlin较熟悉的开发者 本文适用于对 Kotlin 较熟悉的开发者,
使用 mirai 作为第三方依赖库引用任意一个 Kotlin, Java 或其他 JVM 平台的项目
**若你希望一份更为基础且详细的guide**, 请参阅: [mirai-guide-getting-started](guide_getting_started.md) **若你希望一份更基础的教程**, 请参阅: [mirai-guide-getting-started](guide_getting_started.md)
**若你希望使用 Java 开发**, 请参阅: [mirai-japt](https://github.com/mamoe/mirai-japt) **若你希望使用 Java 开发**, 请参阅: [mirai-japt](https://github.com/mamoe/mirai-japt)
## Build Requirements ## 构建需求
- Kotlin 1.3.61 - Kotlin 1.3.61 (必须)
- JDK 6 (required) - JDK 6 (必须)
- JDK 11(for protocol tools, optional - JDK 11(可选, 用于测试
- Android SDK 29 (for Android target, optional) - Android SDK 29 (可选, 用于编译安卓目标)
## Use directly ## 获取 Demo
可在 [mirai-demos](https://github.com/mamoe/mirai-demos) 中获取已经配置好依赖的示例项目.
**直接使用 Mirai(终端环境/网页面板(将来)).** ## Quick Start
[Mirai-Console](https://github.com/mamoe/mirai/tree/master/mirai-console) 插件支持, 在终端中启动 Mirai 并获得机器人服务
本模块还未完善。
## Use as a library 请将 `VERSION` 替换为 `mirai-core` 的最新版本号(如 `0.23.0`):
**mirai-core 为独立设计, 可以作为库内置于任意 Java(JVM)/Android 项目中使用.**
请将 `VERSION` 替换为最新的版本(如 `0.23.0`):
[![Download](https://api.bintray.com/packages/him188moe/mirai/mirai-core/images/download.svg)](https://bintray.com/him188moe/mirai/mirai-core/) [![Download](https://api.bintray.com/packages/him188moe/mirai/mirai-core/images/download.svg)](https://bintray.com/him188moe/mirai/mirai-core/)
**Mirai 目前还处于实验性阶段, 我们无法保证任何稳定性, API 也可能会随时修改.**
### Maven ### 添加依赖
#### Maven
Kotlin 在 Maven 上只支持 JVM 平台. Kotlin 在 Maven 上只支持 JVM 平台.
...@@ -52,7 +49,7 @@ Kotlin 在 Maven 上只支持 JVM 平台. ...@@ -52,7 +49,7 @@ Kotlin 在 Maven 上只支持 JVM 平台.
</dependencies> </dependencies>
``` ```
### Gradle #### Gradle
Mirai 只发布在 `jcenter`, 因此请确保添加 `jcenter()` 仓库: Mirai 只发布在 `jcenter`, 因此请确保添加 `jcenter()` 仓库:
...@@ -62,53 +59,39 @@ repositories{ ...@@ -62,53 +59,39 @@ repositories{
} }
``` ```
若您需要使用在跨平台项目, 则要对各个目标平台添加不同的依赖,这与 kotlin 相关多平台库的依赖是类似的。
**若您只需要使用在单一平台, 则只需要添加一项该平台的依赖.**
**注意:** **注意:**
Mirai 核心由 API 模块(`mirai-core`)和协议模块组成。 Mirai 核心由 API 模块(`mirai-core`)和协议模块组成。
只添加 API 模块将无法正常工作。 只添加 API 模块将无法正常工作。
现在只推荐使用 QQAndroid 协议,请参照下文选择对应目标平台的依赖添加。 现在只推荐使用 QQAndroid 协议,请参照下文选择对应目标平台的依赖添加。
**jvm** (JVM 平台) **jvm** (JVM 平台源集)
```kotlin ```kotlin
implementation("net.mamoe:mirai-core-qqandroid-jvm:VERSION") implementation("net.mamoe:mirai-core-qqandroid-jvm:VERSION")
``` ```
**common** (通用平台) **common** (Kotlin 多平台项目的通用源集)
```kotlin ```kotlin
implementation("net.mamoe:mirai-core-qqandroid-common:VERSION") implementation("net.mamoe:mirai-core-qqandroid-common:VERSION")
``` ```
**android** (Android 平台) **android** (Android 平台源集)
```kotlin ```kotlin
implementation("net.mamoe:mirai-core-qqandroid-android:VERSION") implementation("net.mamoe:mirai-core-qqandroid-android:VERSION")
``` ```
## Try ### 开始使用
### On JVM or Android
现在体验低付出高效率的 Mirai
```kotlin ```kotlin
val bot = Bot(qqId, password).alsoLogin() val bot = Bot(qqId, password).alsoLogin()
bot.subscribeMessages { bot.subscribeMessages {
"你好" reply "你好!" "你好" reply "你好!"
"profile" reply { sender.queryProfile() } contains("图片"){ File("C:\\image.png").sendAsImage() }
contains("图片"){ File(imagePath).send() }
} }
bot.subscribeAlways<MemberPermissionChangedEvent> { bot.subscribeAlways<MemberPermissionChangedEvent> {
if (it.kind == BECOME_OPERATOR) if (it.kind == BECOME_OPERATOR)
reply("${it.member.id} 成为了管理员") reply("${it.member.id} 成为了管理员")
} }
``` ```
\ No newline at end of file
### Performance
Android 上, Mirai 运行需使用 80M 内存.
JVM 上启动需 80M 内存, 每多一个机器人实例需要 30M 内存.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment