Skip to content

Commit ff45c5c

Browse files
authored
docs(cndocs): 同步翻译更新(高质量) (#1004)
1 parent d805185 commit ff45c5c

8 files changed

Lines changed: 1026 additions & 954 deletions

cndocs/integration-with-android-fragment.md

Lines changed: 123 additions & 232 deletions
Large diffs are not rendered by default.

cndocs/other-debugging-methods.md

Lines changed: 9 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -5,91 +5,32 @@ title: 其他调试方法
55

66
import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import constants from '@site/core/TabsConstants';
77

8-
此页面介绍了除 [打开调试器](./debugging#opening-the-debugger) 中描述的方法之外的其他 JavaScript 调试方法。如果你正在使用新创建的 React Native 或 Expo 应用,我们建议从那里开始
8+
此页面介绍了传统的 JavaScript 调试方法。如果你正在使用新创建的 React Native 或 Expo 应用,我们建议使用 [React Native DevTools](./react-native-devtools)
99

1010
## Safari 开发者工具(直接调试 JSC)
1111

1212
当你的应用使用 [JavaScriptCore](https://trac.webkit.org/wiki/JavaScriptCore)(JSC)作为运行时环境时,可以使用 Safari 来调试应用的 iOS 版本。
1313

1414
1. **仅适用于物理设备**:打开"设置"应用,导航到 Safari > 高级,确保"Web 检查器"已打开。
15-
2. 在 Mac 上,打开 Safari 并启用"开发"菜单。可以在 Safari > 设置... 下找到,然后选择"高级"选项卡,再勾选"显示开发者功能"。
15+
2. 在 Mac 上,打开 Safari 并启用"开发"菜单。可以在 Safari > 设置... 下找到,然后选择"高级"选项卡,再勾选"显示面向 Web 开发者的功能"。
1616
3. 在"开发"菜单下找到你的设备,并从子菜单中选择"JSContext"项。这将打开 Safari 的 Web 检查器,其中包括类似于 Chrome 开发者工具的控制台和源代码面板。
1717

1818
![Opening Safari Web Inspector](/docs/assets/debugging-safari-developer-tools.jpg)
1919

2020
:::tip
21-
虽然默认情况下可能没有启用 Source Map,但是你可以参考这篇指南或者视频,了解如何启用它们,并在源代码的正确位置设置断点。
21+
虽然默认情况下可能没有启用 Source Map,但你可以参考[这篇指南](https://blog.nparashuram.com/2019/10/debugging-react-native-ios-apps-with.html)或者[视频](https://www.youtube.com/watch?v=GrGqIIz51k4)了解如何启用它们并在源代码的正确位置设置断点。
2222
:::
2323

2424
:::tip
25-
每次应用重新加载时,都会创建一个新的 JSContext。勾选"Automatically Show Web Inspectors for JSContexts"可以省去你手动选择最新 JSContext 的麻烦。
25+
每次应用重新加载时都会创建一个新的 JSContext。勾选"Automatically Show Web Inspectors for JSContexts"可以省去你手动选择最新 JSContext 的麻烦。
2626
:::
2727

28-
## 远程 JavaScript 调试(已弃用
28+
## 远程 JavaScript 调试(已移除
2929

30-
:::warning
31-
在 React Native 0.73 版本中,远程 JavaScript 调试功能已被弃用,未来版本将彻底移除。
32-
:::
33-
34-
远程 JavaScript 调试可以将外部网页浏览器(Chrome)连接到你的应用,并在网页中运行你的 JavaScript 代码。这使得你可以像调试普通网页应用一样,使用 Chrome 的调试器来调试 React Native 应用。不过需要注意的是,浏览器环境与应用环境可能存在很大差异,并非所有的 React Native 模块都能在这种调试方式下正常工作。
35-
36-
### 设置
37-
38-
从 React Native 0.73 开始,必须使用 `NativeDevSettings` 模块**手动启用**远程 JavaScript 调试功能。
39-
40-
```js
41-
import NativeDevSettings from 'react-native/Libraries/NativeModules/specs/NativeDevSettings';
42-
43-
function MyApp() {
44-
// 将此操作分配给只在开发模式下显示的按钮或 useEffect 调用。
45-
const connectToRemoteDebugger = () => {
46-
NativeDevSettings.setIsDebuggingRemotely(true);
47-
};
48-
}
49-
```
50-
51-
当调用`NativeDevSettings.setIsDebuggingRemotely(true)`时,系统会打开新的标签页[http://localhost:8081/debugger-ui](http://localhost:8081/debugger-ui)
30+
:::warning 重要
31+
远程 JavaScript 调试功能已在 React Native 0.79 版本中移除。请查看原始的[弃用公告](https://github.com/react-native-community/discussions-and-proposals/discussions/734)
5232

53-
从该页面,你可以通过以下方式打开 Chrome 开发者工具:
54-
55-
- View > Developer > Developer Tools
56-
- <kbd>⌥ Option</kbd> + <kbd>Cmd ⌘</kbd> + <kbd>I</kbd> (macOS) / <kbd>Ctrl</kbd> + <kbd>Shift</kbd> + <kbd>I</kbd> (Windows 和 Linux 系统)。
57-
58-
你可以在控制台和源代码面板中查看 React Native 代码。
59-
60-
![The remote debugger window in Chrome](/docs/assets/debugging-chrome-remote-debugger.jpg)
61-
62-
:::info 信息
63-
在 Chrome 远程 JavaScript 调试器下,React DevTools 的网页版本将无法与 React Native 一起使用。请参阅 [React DevTools](./react-devtools) 指南,了解如何使用独立版本的 React DevTools。
33+
如果你使用的是较旧版本的 React Native,请查阅[对应版本的文档](/versions)
6434
:::
6535

66-
:::note 注意
67-
在 Android 上,如果调试器与设备之间的时间发生偏移,可能会导致动画和事件行为异常。可以通过运行 `adb shell "date `date +%m%d%H%M%Y.%S%3N`"` 命令来修复这个问题。如果使用物理设备,则需要 root 权限。
68-
:::
69-
70-
### 在实体设备上调试
71-
72-
:::info
73-
如果您使用的是 Expo CLI,则已为您配置好了。
74-
:::
75-
76-
<Tabs groupId="platform" defaultValue={constants.defaultPlatform} values={constants.platforms} className="pill-tabs">
77-
<TabItem value="ios">
78-
79-
在 iOS 设备上,打开文件[`RCTWebSocketExecutor.mm`](https://github.com/facebook/react-native/blob/master/packages/react-native/React/CoreModules/RCTWebSocketExecutor.mm),将"localhost"替换为你电脑的 IP 地址。
80-
81-
</TabItem>
82-
<TabItem value="android">
83-
84-
对于通过 USB 连接的 Android 5.0+设备,您可以使用[`adb`命令行工具](http://developer.android.com/tools/help/adb.html)在设备和电脑之间建立端口映射:
85-
86-
```sh
87-
adb reverse tcp:8081 tcp:8081
88-
```
89-
90-
</TabItem>
91-
</Tabs>
92-
93-
:::note 注意
94-
如果您遇到任何问题,可能是某个 Chrome 扩展程序与调试器有了意外的互动。请尝试禁用所有扩展程序,然后一个个重新启用,直到找到有问题的扩展程序。
95-
:::
36+
![The remote debugger window in Chrome](/docs/assets/debugging-chrome-remote-debugger.jpg)

0 commit comments

Comments
 (0)