Update docs

This commit is contained in:
Him188 2021-01-13 16:07:02 +08:00
parent 7d3bcbeb1c
commit 7b5cbfce5b
10 changed files with 69 additions and 19 deletions

View File

@ -179,4 +179,4 @@ setLoginSolver(new YourLoginSolver())
> 下一步,[Contacts](Contacts.md)
>
> [回到 Mirai 文档索引](README.md)
> [回到 Mirai 文档索引](README.md#mirai-core-api-文档)

View File

@ -35,7 +35,7 @@
```kotlin
plugins {
kotlin("jvm") version "1.4.21"
kotlin("jvm") version "1.4.21" // 请确保添加 Kotlin至少使用 1.4.0 版本
}
repositories {
@ -47,7 +47,11 @@ dependencies {
}
```
注意,必须添加 Kotlin 插件才能正确获取 mirai 软件包。
**注意,必须添加 Kotlin 插件才能正确获取 mirai 软件包。**
> 依赖配置完成,请选择:
> - [分离 API 和实现(可选)](#分离-api-和实现可选)
> - [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)
### Gradle Groovy DSL
@ -55,7 +59,7 @@ dependencies {
```groovy
plugins {
id 'org.jetbrains.kotlin.jvm' version '1.4.21'
id 'org.jetbrains.kotlin.jvm' version '1.4.21' // 请确保添加 Kotlin至少使用 1.4.0 版本
}
repositories {
@ -67,9 +71,13 @@ dependencies {
}
```
> 依赖配置完成,请选择:
> - [分离 API 和实现(可选)](#分离-api-和实现可选)
> - [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)
### 分离 API 和实现(可选)
mirai 在开发时需要 `net.mamoe:mirai-core-api`, 在运行时需要 `net.mamoe:mirai-core`。可以在开发和编译时只依赖 `mirai-core-api`
mirai 在开发时需要 `net.mamoe:mirai-core-api`, 在运行时需要 `net.mamoe:mirai-core`。可以在开发和编译时只依赖 `mirai-core-api`,会减轻对 IDE 的负担
```kotlin
dependencies {
val miraiVersion = "2.0-RC" // 替换为你需要的版本号
@ -126,8 +134,13 @@ dependencies {
> 可以在 [Kotlin 官方文档](https://www.kotlincn=.net/docs/reference/using-maven.html) 获取更多有关配置 Kotlin 的信息。
> 依赖配置完成,[回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)
## C. 下载 JAR 包
非常不推荐这种方法,请尽可能使用构建工具。
在 [Jcenter](https://jcenter.bintray.com/net/mamoe/mirai-core-all/) 或 [阿里云代理仓库](https://maven.aliyun.com/repository/public/net/mamoe/mirai-core-all/) 下载指定版本的 `-all.jar` 文件,即包含 `mirai-core``mirai-core-api``mirai-core-utils` 和其他依赖。
> [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)

View File

@ -2,13 +2,26 @@
[![](https://mermaid.ink/img/eyJjb2RlIjoiY2xhc3NEaWFncmFtXG5cbmNsYXNzIEJvdCB7XG4gICAgK2ZyaWVuZHM6IENvbnRhY3RMaXN0XG4gICAgK2dyb3VwczogQ29udGFjdExpc3RcbiAgICArZ2V0RnJpZW5kKExvbmcpIEZyaWVuZD9cbiAgICArZ2V0RnJpZW5kT3JOdWxsKExvbmcpIEZyaWVuZFxuICAgICtnZXRHcm91cChMb25nKSBHcm91cD9cbiAgICArZ2V0R3JvdXBPckZhaWwoTG9uZykgR3JvdXBcbiAgICArbG9naW4oKVxuICAgICtjbG9zZSgpXG59XG5cbmNsYXNzIENvbnRhY3RPckJvdCB7XG4gICAgK2lkOiBJbnRcbiAgICArYXZhdGFyVXJsOiBTdHJpbmdcbn1cblxuY2xhc3MgVXNlck9yQm90IHtcbiAgICArbnVkZ2UoKSBOdWRnZVxufVxuXG5jbGFzcyBDb250YWN0IHtcbiAgICArYm90OiBCb3RcbiAgICArc2VuZE1lc3NhZ2UoTWVzc2FnZSkgTWVzc2FnZVJlY2VpcHRcbiAgICArc2VuZE1lc3NhZ2UoU3RyaW5nKSBNZXNzYWdlUmVjZWlwdFxuICAgICt1cGxvYWRJbWFnZShFeHRlcm5hbEltYWdlKSBJbWFnZVxufVxuXG5jbGFzcyBVc2VyIHtcbiAgICArbmljazogU3RyaW5nXG4gICAgK3JlbWFyazogU3RyaW5nXG59XG5cbmNsYXNzIEdyb3VwIHtcbiAgICArbWVtYmVyczogQ29udGFjdExpc3RcbiAgICArbmFtZTogU3RyaW5nXG4gICAgK3NldHRpbmdzOiBHcm91cFNldHRpbmdzXG4gICAgK293bmVyOiBOb3JtYWxNZW1iZXJcbiAgICArYm90TXV0ZVJlbWFpbmluZzogTG9uZ1xuICAgICtib3RQZXJtaXNzaW9uOiBNZW1iZXJQZXJtaXNzaW9uXG4gICAgK3F1aXQoKSBCb29sZWFuXG4gICAgK3VwbG9hZFZvaWNlKCkgVm9pY2Vcbn1cblxuY2xhc3MgTm9ybWFsTWVtYmVyIHtcbiAgICArbXV0ZSgpXG4gICAgK2tpY2soKVxufVxuXG5jbGFzcyBBbm9ueW1vdXNNZW1iZXIge1xuICAgICthbm9ueW1vdXNJZDogU3RyaW5nXG59XG5cbmNsYXNzIE1lbWJlciB7XG4gICAgK2dyb3VwOiBHcm91cFxufVxuXG5Db250YWN0T3JCb3Q8fC0tQ29udGFjdFxuQ29udGFjdE9yQm90PHwtLVVzZXJPckJvdFxuXG5Vc2VyT3JCb3Q8fC0tQm90XG5Vc2VyT3JCb3Q8fC0tVXNlclxuXG5Db250YWN0PHwtLVVzZXJcbkNvbnRhY3Q8fC0tR3JvdXBcblxuVXNlcjx8LS1NZW1iZXJcblVzZXI8fC0tRnJpZW5kXG5cbk1lbWJlcjx8LS1Ob3JtYWxNZW1iZXJcbk1lbWJlcjx8LS1Bbm9ueW1vdXNNZW1iZXIiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9LCJ1cGRhdGVFZGl0b3IiOmZhbHNlfQ)](https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoiY2xhc3NEaWFncmFtXG5cbmNsYXNzIEJvdCB7XG4gICAgK2ZyaWVuZHM6IENvbnRhY3RMaXN0XG4gICAgK2dyb3VwczogQ29udGFjdExpc3RcbiAgICArZ2V0RnJpZW5kKExvbmcpIEZyaWVuZD9cbiAgICArZ2V0RnJpZW5kT3JOdWxsKExvbmcpIEZyaWVuZFxuICAgICtnZXRHcm91cChMb25nKSBHcm91cD9cbiAgICArZ2V0R3JvdXBPckZhaWwoTG9uZykgR3JvdXBcbiAgICArbG9naW4oKVxuICAgICtjbG9zZSgpXG59XG5cbmNsYXNzIENvbnRhY3RPckJvdCB7XG4gICAgK2lkOiBJbnRcbiAgICArYXZhdGFyVXJsOiBTdHJpbmdcbn1cblxuY2xhc3MgVXNlck9yQm90IHtcbiAgICArbnVkZ2UoKSBOdWRnZVxufVxuXG5jbGFzcyBDb250YWN0IHtcbiAgICArYm90OiBCb3RcbiAgICArc2VuZE1lc3NhZ2UoTWVzc2FnZSkgTWVzc2FnZVJlY2VpcHRcbiAgICArc2VuZE1lc3NhZ2UoU3RyaW5nKSBNZXNzYWdlUmVjZWlwdFxuICAgICt1cGxvYWRJbWFnZShFeHRlcm5hbEltYWdlKSBJbWFnZVxufVxuXG5jbGFzcyBVc2VyIHtcbiAgICArbmljazogU3RyaW5nXG4gICAgK3JlbWFyazogU3RyaW5nXG59XG5cbmNsYXNzIEdyb3VwIHtcbiAgICArbWVtYmVyczogQ29udGFjdExpc3RcbiAgICArbmFtZTogU3RyaW5nXG4gICAgK3NldHRpbmdzOiBHcm91cFNldHRpbmdzXG4gICAgK293bmVyOiBOb3JtYWxNZW1iZXJcbiAgICArYm90TXV0ZVJlbWFpbmluZzogTG9uZ1xuICAgICtib3RQZXJtaXNzaW9uOiBNZW1iZXJQZXJtaXNzaW9uXG4gICAgK3F1aXQoKSBCb29sZWFuXG4gICAgK3VwbG9hZFZvaWNlKCkgVm9pY2Vcbn1cblxuY2xhc3MgTm9ybWFsTWVtYmVyIHtcbiAgICArbXV0ZSgpXG4gICAgK2tpY2soKVxufVxuXG5jbGFzcyBBbm9ueW1vdXNNZW1iZXIge1xuICAgICthbm9ueW1vdXNJZDogU3RyaW5nXG59XG5cbmNsYXNzIE1lbWJlciB7XG4gICAgK2dyb3VwOiBHcm91cFxufVxuXG5Db250YWN0T3JCb3Q8fC0tQ29udGFjdFxuQ29udGFjdE9yQm90PHwtLVVzZXJPckJvdFxuXG5Vc2VyT3JCb3Q8fC0tQm90XG5Vc2VyT3JCb3Q8fC0tVXNlclxuXG5Db250YWN0PHwtLVVzZXJcbkNvbnRhY3Q8fC0tR3JvdXBcblxuVXNlcjx8LS1NZW1iZXJcblVzZXI8fC0tRnJpZW5kXG5cbk1lbWJlcjx8LS1Ob3JtYWxNZW1iZXJcbk1lbWJlcjx8LS1Bbm9ueW1vdXNNZW1iZXIiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9LCJ1cGRhdGVFZGl0b3IiOmZhbHNlfQ)
| 类型 | 描述 | 最低支持的版本 |
|:--------------:|:---------------------------------------------------|:-----------:|
| `ContactOrBot` | `Contact``Bot` 的公共接口 | 2.0 |
| `OtherClient` | Bot 的*其他客户端*, 如 "我的 iPad", "我的电脑" | 2.0 |
| `Bot` | 机器人对象 | 2.0 |
| `Contact` | 联系人对象, 即所有的群, 好友, 陌生人, 群成员等 | 2.0 |
| `Group` | 群对象 | 2.0 |
| `User` | 用户对象, 即 "个人". 包含好友, 陌生人, 群成员, 临时会话用户 | 2.0 |
| `Friend` | 好友对象 | 2.0 |
| `Stranger` | 陌生人对象 | 2.0 |
| `Member` | 群成员对象, 属于一个 `Group`. | 2.0 |
基于面向对象的设计,可直接获取 `Contact` 的属性如 `nick``permission`。
基于面向对象的设计,可直接获取 `Contact` 的属性如 `nick``permission`。请在实践时在接口源码内查看更清晰的说明。
要主动发送一条消息,调用 `Contact.sendMessage()` 即可*(后文介绍)*。
要主动发送一条消息,总是调用 `Contact.sendMessage(message)`*`message` 在后文介绍)*。
可通过 `Bot.getFriend``Bot.getGroup` 获取相关对象,也可以通过事件获取*(后文介绍)*。
可通过 `Bot.getFriend` `Bot.getGroup``Bot.getStranger` 获取相关对象,也可以通过事件获取 *(事件在后文介绍)*
----
> 下一步,[Events](Events.md)
>
> [回到 Mirai 文档索引](README.md)
> [回到 Mirai 文档索引](README.md#mirai-core-api-文档)

View File

@ -462,6 +462,8 @@ reply("复读模式结束")
######  
----
> 下一步,[Messages](Messages.md)
>
> [回到 Mirai 文档索引](README.md)
> [回到 Mirai 文档索引](README.md#mirai-core-api-文档)

View File

@ -47,4 +47,6 @@ Mirai 的版本号遵循 [语义化版本 2.0.0](https://semver.org/lang/zh-CN/#
> [回到 Mirai 文档索引](README.md)
----
> [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)

View File

@ -300,4 +300,9 @@ public final class A {
}
```
Java 使用者可以认为 `@JvmBlockingBridge suspend fun getValue(): String` 相当于 `fun getValue(): String`
Java 使用者可以认为 `@JvmBlockingBridge suspend fun getValue(): String` 相当于 `fun getValue(): String`
----
> [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)

View File

@ -309,9 +309,15 @@ val chain = "[mirai:atall]".deserializeMiraiCode()
MessageChain chain = MiraiCode.deserializeFromMiraiCode("[mirai:atall]");
```
> 回到 [目录](#目录)
---------
到这里,你已经完成了 Mirai 所有文档的阅读。现在你已经熟悉了 Mirai并可以开始使用了。
你可以首先构造 Bot登录然后从监听事件起开始创建你的机器人或从 Bot 获取到指定群主动发送消息。在使用中遇到问题可以参考 Mirai 源码内注释,该注释会包含更多实践上的帮助。
如果你仍然对 Mirai 架构有不明确的地方,欢迎在 [#848](https://github.com/mamoe/mirai/discussions/848) 提出建议,或者直接在 PR 提交你的修改。
> 回到 [目录](#目录)
>
> [回到 Mirai 文档索引](README.md)
> [回到 Mirai 文档索引](README.md#mirai-core-api-文档)

View File

@ -29,10 +29,15 @@
*如果你不知道这俩是什么,都安装就对了。*
## 前置知识
### Kotlin
Kotlin 是[让开发人员更快乐的一门现代编程语言](https://www.kotlincn.net/),由 [IntelliJ IDEA](https://www.jetbrains.com/idea/) 的开发公司 [JetBrains](https://www.jetbrains.com/) 维护,被 Google 推举为 Android 首选编程语言。
使用 Mirai 是一个不错的学习 Kotlin 机会,使用者有兴趣可以在 [官方中文文档](https://www.kotlincn.net/docs/reference/) 学习 Kotlin。
Java 开发者如果只希望使用 Mirai 而不学习 Kotlin也请阅读 [Kotlin 定义对应的 Java 定义](KotlinAndJava.md)5 分钟)。
Java 开发者如果只希望使用 Mirai 而不学习 Kotlin也请阅读 [Kotlin 定义对应的 Java 定义](KotlinAndJava.md)5 分钟)。
----
> [回到 Mirai 文档索引](README.md#jvm-平台-mirai-开发)

View File

@ -59,7 +59,7 @@
**Mirai 文档没有废话,请务必仔细阅读每一个字。仔细阅读文档花费的 1 分钟可能相当于不阅读文档而自己摸索解决办法的 1 小时。**
1. [JVM 环境和开发准备工作2 分钟)](Preparations.md#mirai---preparations)
2. 配置项目依赖
2. **配置项目依赖**
- 要把 mirai-core 嵌入一个应用使用,请阅读 [配置项目依赖](ConfiguringProjects.md)。
- 要为 [`mirai-console`] 框架开发插件,请阅读 [mirai-console 的配置插件项目](https://github.com/mamoe/mirai-console/blob/master/docs/ConfiguringProjects.md)。
3. 阅读 API 文档(见下文)
@ -71,7 +71,11 @@
### mirai-core API 文档
> *适用于 2.x 版本*
- [Bots](Bots.md)
- [Contacts](Contacts.md)
- [Events](Events.md)
- [Messages](Messages.md)
> 希望改进文档? 请在 [#848](https://github.com/mamoe/mirai/discussions/848) 提出建议

View File

@ -129,8 +129,8 @@ mirai-console-loader 应运而生,它的工作就是简化 console 启动流
------
以上就是整个 Mirai 生态的概览,如有疏漏或错误,欢迎提出 Issue 修正。
本文作者 [@StageGuard](https://github.com/StageGuard)。如有疏漏或错误,欢迎[提出 Issue](https://github.com/mamoe/mirai/issues/new) 修正。
实体关系图采用 [Mermaid](https://github.com/mermaid-js/mermaid) 绘制。
> [回到 Mirai 文档索引](README.md)
> [回到 Mirai 文档索引](README.md#mirai-core-api-文档)