diff --git a/site/pages/docs/faq.md b/site/pages/docs/faq.mdx
similarity index 92%
rename from site/pages/docs/faq.md
rename to site/pages/docs/faq.mdx
index 893c6067..a55f598c 100644
--- a/site/pages/docs/faq.md
+++ b/site/pages/docs/faq.mdx
@@ -4,6 +4,8 @@ title: 常见问题
type: 其他
---
+import { Callout } from "nextra/components";
+
如果本页面没能回答您的疑问,您可以去[issues 区](https://github.com/reactnativecn/react-native-pushy/issues)或 QQ 群 729013783 提问,或给我们发[邮件](mailto:hi@charmlot.com)。
### 业务问题
@@ -46,12 +48,6 @@ type: 其他
---
-#### XCode 编译时报错 "\_BZ2_bzRead", referenced from 等
-
-在工程 target 的 Build Phases->Link Binary with Libraries 中加入 libz.tbd、libbz2.1.0.tbd
-
----
-
#### 热更新成功完成,但是重启后又回滚了是怎么回事?
可以正常更新,但是重启后回滚,一般有两种可能的情况:
@@ -75,7 +71,9 @@ type: 其他
请谨记,任何时候生成原生包,请 1)先修改原生版本号,2)并上传到 pushy 服务器,才可以正常获得热更新。
-> 如果您是`高级版`或`专业版`客户,也可以考虑在管理后台的应用设置中启用`忽略编译时间戳`。此选项仅对比版本号,不校验时间戳,可提供更宽容的热更策略,但可能消耗更多流量,适合需要管理多个分发渠道的客户。
+
+ 如果您是`高级版`或`专业版`客户,也可以考虑在管理后台的应用设置中启用`忽略编译时间戳`。此选项仅对比版本号,不校验时间戳,可提供更宽容的热更策略,但可能消耗更多流量,适合需要管理多个分发渠道的客户。
+
---
@@ -91,7 +89,7 @@ type: 其他
#### 我可以试用付费版本先评估一下效果吗?
-新用户注册验证通过后,将自动获得 7 天`专业版`试用。如您需要更长的评估时间,可将注册用户名、邮箱、公司(或个人)名称发送至,标题注明“pushy 评估试用延长”,我们会为您酌情延长评估时间。
+新用户注册验证通过后,将自动获得 7 天`专业版`试用。如您需要更长的评估时间,可将注册用户名、邮箱、公司(或个人)名称发送至 hi@charmlot.com ,标题注明“pushy 评估试用延长”,我们会为您酌情延长评估时间。
---
@@ -118,7 +116,7 @@ type: 其他
#### 我可以单独升级某项配额吗?
-我们暂时无法为某个单项配额提供升级选项,请选择更高版本的配额。如果专业版本配额仍然不能满足需求,请通过邮件与我们联系,我们将根据您的个性化需求为您定制方案。
+我们暂时无法为某个单项配额提供升级选项,请选择更高版本的配额。如果专业版本配额仍然不能满足需求,请通过邮件 hi@charmlot.com 与我们联系,我们将根据您的个性化需求为您定制方案。
---
@@ -130,13 +128,13 @@ type: 其他
#### 如何获取付费的专人技术支持?
-请将您的用户名和订单截图发送至,同时提供您希望的技术联系方式(QQ、微信等),核实后会有技术专员添加您为好友。
+请将您的用户名和订单截图发送至 hi@charmlot.com ,同时提供您希望的技术联系方式(QQ、微信等),核实后会有技术专员添加您为好友。
---
#### 如何开具发票?
-请将具体开票需求发送至,并附上注册邮箱和订单截图。我们默认会回复普通电子发票到`注册邮箱`,类目为软件服务。如需指定接受邮箱或手机,请在`邮件正文`中注明。如需要邮寄纸质发票请注明邮寄地址,邮费为到付。
+请将具体开票需求发送至 hi@charmlot.com ,并附上注册邮箱和订单截图。我们默认会回复普通电子发票到`注册邮箱`,类目为软件服务。如需指定接受邮箱或手机,请在`邮件正文`中注明。如需要邮寄纸质发票请注明邮寄地址,邮费为到付。
---
@@ -144,17 +142,11 @@ type: 其他
可以的。请对照[价格表](/pricing),将对应版本的款项转账至:
-
-
| 公司名称 | 武汉青罗网络科技有限公司 |
| ---------- | ------------------------ |
| 开户行名称 | 浙江网商银行 |
| 账号 | 8888888048825564 |
-转账完成后请截图发送至,并写明注册邮箱,我们将在一个工作日内开通对应服务。
+转账完成后请截图发送至 hi@charmlot.com ,并写明注册邮箱,我们将在一个工作日内开通对应服务。
---
diff --git a/site/pages/docs/getting-started.md b/site/pages/docs/getting-started.mdx
similarity index 81%
rename from site/pages/docs/getting-started.md
rename to site/pages/docs/getting-started.mdx
index 21d4e83f..5852898b 100644
--- a/site/pages/docs/getting-started.md
+++ b/site/pages/docs/getting-started.mdx
@@ -4,15 +4,15 @@ title: 安装配置
type: 快速入门
---
-import { Tabs } from 'nextra/components'
-
-首先你应该有一个基于 React Native 开发的应用,我们把具有 package.json 的目录叫做你的"应用根目录"。
+import { Callout, Steps, Tabs } from "nextra/components";
+首先你应该有一个基于 React Native 开发的应用,我们把具有 package.json 的目录叫做你的`应用根目录`。
如果你还没有初始化应用,请参阅[开始使用 React Native](https://reactnative.cn/docs/getting-started)。
-所以我们也假设你已经拥有了开发 React Native 应用的一切环境,包括`Node.js`、`XCode`、`Android SDK`等等。
+我们假设你已经拥有了开发 React Native 应用的一切环境,包括`Node.js`、`XCode`、`Android SDK`等等。
-## 安装
+
+### 安装
在你的项目根目录下运行以下命令:
@@ -28,9 +28,13 @@ npm i react-native-update
# npm i react-native-update@8.x
```
-> 如果下载极慢或者显示网络失败,请设置使用淘宝镜像`npx nrm use taobao`
+
+ 如果下载极慢或者显示网络失败,请设置使用淘宝镜像 `npx nrm use taobao`
+
-> 注意请不要混用`npm/yarn/pnpm`等包管理器及对应的`lock`文件,团队成员请坚持使用同一包管理器,且仅保留统一格式的`lock`文件
+
+ 注意请不要混用`npm/yarn/pnpm`等包管理器及对应的`lock`文件,团队成员请坚持使用同一包管理器,且仅保留统一格式的`lock`文件
+
如果你的 RN 版本 >= 0.60,请在 ios 目录下执行:
@@ -46,8 +50,6 @@ pod install
然后按照[手动 link](#手动-link)的说明操作。
-> 注意:如果是混编 RN 项目,由于目前官方集成文档并不完善,参照官方文档可能无法实现自动 link 功能。此时即便 RN 版本 >= 0.60,你可能也需要执行手动 link 操作。
-
如果你的RN版本比较老(< 0.46),请点击这里的注意事项
@@ -69,22 +71,29 @@ pod install
npm i react-native-update@4.x
```
-如果 RN 的版本是 0.45 及以下,你还必须安装[Android NDK](http://androiddevtools.cn),版本最好选用 r10e,并设置环境变量`ANDROID_NDK_HOME`,指向你的 NDK 根目录(例如`/Users/tdzl2003/Downloads/android-ndk-r10e`)。
+如果 RN 的版本是 0.45 及以下,你还必须安装`[Android NDK](http://androiddevtools.cn)`,版本最好选用 r10e,并设置环境变量`ANDROID_NDK_HOME`,指向你的 NDK 根目录(例如`/Users/tdzl2003/Downloads/android-ndk-r10e`)。
-> 请记得,任意在 ios 和 android 目录下的修改,一定要重新编译(npx react-native run-ios 或 run-android 命令编译,或在 Xcode/Android Studio 中重新编译)才能生效。
+
+ 请记得,任意在 ios 和 android 目录下的修改,一定要重新编译(使用 npx
+ react-native run-ios 或 run-android 命令编译,或在 Xcode/Android Studio
+ 中重新编译)才能生效。
+
-## 手动 link
+### 手动 link
如果 RN 版本 >= 0.60 则不需要此手动 link 步骤。
-> 注意:如果是混编 RN 项目,由于目前官方集成文档并不完善,参照官方文档可能无法实现自动 link 功能。此时即便 RN 版本 >= 0.60,你可能也需要执行手动 link 操作。
+
+ 注意:如果是混编 RN 项目,由于自定义的配置可能不完整,自动 link
+ 的功能可能不能正常工作。此时即便 RN 版本 >= 0.60,你可能也需要执行手动 link 操作。
+
-### iOS
+#### iOS
-RN < 0.60且使用CocoaPods(推荐)
+RN < 0.60且使用CocoaPods(推荐)
1. 在 ios/Podfile 中添加
@@ -98,7 +107,7 @@ pod 'react-native-update', path: '../node_modules/react-native-update'
-RN < 0.60且不使用CocoaPods
+RN < 0.60且不使用CocoaPods
1. 在 XCode 中的 Project Navigator 里,右键点击`Libraries` ➜ `Add Files to [你的工程名]`
2. 进入`node_modules` ➜ `react-native-update` ➜ `ios 并选中`RCTPushy.xcodeproj`
@@ -117,10 +126,10 @@ date +%s > "$DEST/pushy_build_time.txt"
-### Android
+#### Android
-RN < 0.60
+RN < 0.60
1. 在`android/settings.gradle`中添加如下代码:
@@ -139,13 +148,14 @@ date +%s > "$DEST/pushy_build_time.txt"
- 在文件开头增加 `import cn.reactnative.modules.update.UpdatePackage;`
- 在`getPackages()` 方法中增加 `new UpdatePackage()`(注意上一行可能要增加一个逗号)
+
-## 配置 Bundle URL
+### 配置 Bundle URL
注意此步骤无论任何版本,目前都需要手动配置。
-### iOS
+#### iOS
在你的 AppDelegate.mm 或 AppDelegate.m 文件(不同 RN 版本可能后缀名不同)中增加如下代码:
@@ -190,7 +200,7 @@ date +%s > "$DEST/pushy_build_time.txt"
```
-### Android
+#### Android
在 MainApplication 中增加如下代码(如果是混编原生的项目或其他原因没有使用 ReactApplication,请[使用此 api 集成](api#updatecontextsetcustominstancemanagerreactinstancemanager-instancemanager)):
@@ -214,7 +224,7 @@ class MainApplication : Application(), ReactApplication {
return UpdateContext.getBundleUrl(this@MainApplication)
}
// ↑↑↑
-
+
// ...其他代码
}
}
@@ -251,9 +261,13 @@ public class MainApplication extends Application implements ReactApplication {
-> 请记得,任意在 ios 和 android 目录下的修改,一定要重新编译(npx react-native run-ios 或 run-android 命令编译,或在 Xcode/Android Studio 中重新编译)才能生效。
+
+ 请记得,任意在 ios 和 android 目录下的修改,一定要重新编译(npx react-native
+ run-ios 或 run-android 命令编译,或在 Xcode/Android Studio
+ 中重新编译)才能生效。
+
-## 禁用 android 的 crunch 优化
+### 禁用 android 的 crunch 优化
android 会在生成 apk 时自动对 png 图片进行压缩,此操作既耗时又影响增量补丁的生成。为了保证补丁能正常生成,您需要在`android/app/build.gradle`中关闭此操作:
@@ -273,9 +287,9 @@ android {
...
```
-## 登录与创建应用
+### 登录与创建应用
-首先请在注册帐号,然后在你的项目根目录下运行以下命令:
+首先请在 https://update.reactnative.cn 注册帐号,然后在你的项目根目录下运行以下命令:
```bash
$ pushy login
@@ -294,7 +308,7 @@ $ pushy createApp --platform android
App Name: <输入应用名字>
```
-> 两次输入的名字可以相同,这没有关系。
+两次输入的名字可以相同,这没有关系。
如果你已经在网页端或者其它地方创建过应用,也可以直接选择应用:
@@ -325,3 +339,5 @@ Enter appId: <输入应用前面的编号>
你可以安全的把`update.json`上传到 Git 等 CVS 系统上,与你的团队共享这个文件,它不包含任何敏感信息。当然,他们在使用任何功能之前,都必须首先输入`pushy login`进行登录。
至此应用的创建/选择就已经成功了。下一步,你需要给代码添加相应的功能,请参阅[代码集成](integration)。
+
+