在 Android 上使用 DevTools 和 Expo 49 缺少日志和网络信息

Missing logs and network information using DevTools and Expo 49 on Android

提问人:LukasMod 提问时间:10/18/2023 更新时间:11/8/2023 访问量:49

问:

当我按下“j”时,DevTools 会显示出来,并且没有错误/警告按摩。但是我的应用程序中也没有consol.logs,网络选项卡中没有请求日志等。

应用程序重新加载后,我在 DevTools 中获取模式:

“调试连接已关闭。原因:WebSocket 已断开连接。准备就绪后,通过重新打开 DevTools 重新连接。

按重新连接不起作用。我必须关闭它,然后用“j”重新打开,但没有任何效果。

有时,通常在第一次尝试时,我可以在 <MY IP>:8081 中看到我的项目文件,但事件随后它不显示日志。

问题是 Android,尝试使用真实设备和被清除的模拟器,但没有效果。

在iOS上,经过几次刷新后,我可以看到日志,但并非总是如此,就像有时显示的那样,有时没有。网络请求看起来不错。

我想应该是端口的东西吗?

通常,我在大多数项目中都使用 Flipper,在那里我可以看到我的日志和网络,但我想尝试一些新鲜的东西。我在 MacOS 13.2.1 M1 上工作

  "dependencies": {
    "expo": "~49.0.13",
    "expo-status-bar": "~1.6.0",
    "react": "18.2.0",
    "react-native": "0.72.5"
  },

我试过了,我可以在那里看到我的模拟器,但看不到世博会应用程序。chrome://inspect/#devices

我按照文档中的建议创建了简单的世博会应用程序:npx create-expo-app StickerSmash

并添加了简单的获取代码和一些 consol.logs,所以我的 App.js 看起来像这样:

import { useEffect, useState } from "react"
import { StyleSheet, Text, View } from "react-native"

export default function App() {
  const [user, setUser] = useState("")
  console.log("App")
  useEffect(() => {
    console.log("useEffect")
    const apiUrl = "https://jsonplaceholder.typicode.com/users"
    async function fetchData() {
      try {
        console.log("Start fetching")
        const response = await fetch(apiUrl)
        const data = await response.json()
        const userName = data[0]?.username

        if (userName) {
          setUser(userName)
        }

        console.log("Data from the API:", data[0].username)
      } catch (error) {
        console.error("Error fetching data:", error)
      }
    }

    // Calling the fetchData function
    fetchData()
  }, [])

  return (
    <View style={styles.container}>
      <Text>`Fetched user: {user}`</Text>
    </View>
  )
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    alignItems: "center",
    justifyContent: "center",
  },
})

Android React-Native 调试 Expo DevTools

评论


答: 暂无答案