Android React Native 应用程序在 getUserMedia WebRTC 调用时崩溃



我已经调试了好几天了,不再有太多选择,因此有一个长镜头的问题 - 我正在使用React Native的ConnectyCube WebRTC视频通话包。我还尝试使用react-native-webrtc包从我的 Android 设备流式传输视频。

使用这两个包时,当我调用 getUserMedia 方法时,我的应用程序崩溃而没有任何日志或错误。我必须再次构建应用程序才能使用它。

这是我以前的一篇文章,描述了我早期遇到的问题 - 但是,如果您从上面的链接下载并构建 ConnectyCubes 应用程序,他们的应用程序可以正常工作 - 我不知道为什么我的没有。

所以我的问题是,我是否应该检查与 React Native 中可能阻止其工作的getUserMedia调用相关的内容?

我正在使用:

RN v0.59.9 
gradle wrapper 5.4.1 
classpath(“com.android.tools.build:gradle:3.4.1”)
buildToolsVersion = “28.0.3”
compileSdkVersion = 28

我已经联系了支持人员,但还没有修复。

奇怪的是,我无法在函数中的某些点记录session参数。提前谢谢。

const getUserMedia = session => {
console.log(session); // logs here 
return new Promise((resolve, reject) => {
console.log(session); // but not here
session.getUserMedia({
audio: true,
video: { facingMode: 'user' }
}, function (error, stream) {
console.log(error, stream) // or here
error ? reject(error) : resolve(stream);
});
});
}

更新

上述函数的问题可能是由于某种原因,崩溃发生在控制台可以打印任何内容之前。

此问题已通过删除 gradle 缓存并运行 npm i 来修复,如下所述:

如何清除gradle缓存?

相关内容

  • 没有找到相关文章