React Native 天才聊天仅在 Android 上在模拟器和设备上崩溃,在 iOS 上运行良好
React Native gifted chat crashing on both emulator and device only on Android, works fine in iOS
我正在尝试让 Gifted Chat 在 Android 上运行,但我尝试过的所有方法都不起作用。 The documentation is here.。它说在文档末尾附近有一些 Android-related 问题,但它们都是建议,而不是要求。 (无论如何,我都试过了)。
我的Android清单有以下内容:
android:name=".MainActivity"
android:label="@string/app_name"
android:windowSoftInputMode="adjustResize"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize">
我已经升级到最新版本,我正在使用他们提供的下面的代码示例来尝试找出可能出错的地方(不是我自己的代码,它可能有额外的 dependencies/unrelated 错误)
import React, { useState, useCallback, useEffect } from 'react'
import { GiftedChat } from 'react-native-gifted-chat'
export function Example() {
const [messages, setMessages] = useState([]);
useEffect(() => {
setMessages([
{
_id: 1,
text: 'Hello developer',
createdAt: new Date(),
user: {
_id: 2,
name: 'React Native',
avatar: 'https://placeimg.com/140/140/any',
},
},
])
}, [])
const onSend = useCallback((messages = []) => {
setMessages(previousMessages => GiftedChat.append(previousMessages, messages))
}, [])
return (
<GiftedChat
messages={messages}
onSend={messages => onSend(messages)}
user={{
_id: 1,
}}
/>
)
}
我没有看到任何错误消息,每次我导航到带有 Gifted 聊天的屏幕时,应用程序都会崩溃。正如问题标题中所说,它只发生在 Android(模拟器和设备)上,并且在 iOS.
上运行良好
想知道是否其他人 运行 遇到了同样的问题并且有快速解决方法。
谢谢。
解决方案可能是您没有在代码中包含 renderAvatar。查看 GitHub 存储库,我发现了一个问题,如果未提供,GiftedChat 无法在 android 上工作。下面是一个例子来说明我的意思:
<GiftedChat
messages={messages}
onSend={(messages) => onSend(messages)}
user={{
_id: 1,
}}
renderAvatar={renderAvatar} (if I remove this line it will crash after 2,3 seconds)
/>
我正在尝试让 Gifted Chat 在 Android 上运行,但我尝试过的所有方法都不起作用。 The documentation is here.。它说在文档末尾附近有一些 Android-related 问题,但它们都是建议,而不是要求。 (无论如何,我都试过了)。
我的Android清单有以下内容:
android:name=".MainActivity"
android:label="@string/app_name"
android:windowSoftInputMode="adjustResize"
android:configChanges="keyboard|keyboardHidden|orientation|screenSize">
我已经升级到最新版本,我正在使用他们提供的下面的代码示例来尝试找出可能出错的地方(不是我自己的代码,它可能有额外的 dependencies/unrelated 错误)
import React, { useState, useCallback, useEffect } from 'react'
import { GiftedChat } from 'react-native-gifted-chat'
export function Example() {
const [messages, setMessages] = useState([]);
useEffect(() => {
setMessages([
{
_id: 1,
text: 'Hello developer',
createdAt: new Date(),
user: {
_id: 2,
name: 'React Native',
avatar: 'https://placeimg.com/140/140/any',
},
},
])
}, [])
const onSend = useCallback((messages = []) => {
setMessages(previousMessages => GiftedChat.append(previousMessages, messages))
}, [])
return (
<GiftedChat
messages={messages}
onSend={messages => onSend(messages)}
user={{
_id: 1,
}}
/>
)
}
我没有看到任何错误消息,每次我导航到带有 Gifted 聊天的屏幕时,应用程序都会崩溃。正如问题标题中所说,它只发生在 Android(模拟器和设备)上,并且在 iOS.
上运行良好想知道是否其他人 运行 遇到了同样的问题并且有快速解决方法。
谢谢。
解决方案可能是您没有在代码中包含 renderAvatar。查看 GitHub 存储库,我发现了一个问题,如果未提供,GiftedChat 无法在 android 上工作。下面是一个例子来说明我的意思:
<GiftedChat
messages={messages}
onSend={(messages) => onSend(messages)}
user={{
_id: 1,
}}
renderAvatar={renderAvatar} (if I remove this line it will crash after 2,3 seconds)
/>