J'essaie d'utiliser la bibliothèque react-native-udp.
J'utilise expo et l'émulateur Android studio.
J'ai utilisé ce manuel pour installer cette bibliothèque : https://www.npmjs.com/package/react-native-udp
Cependant, une erreur se produit lors de la tentative de création d'un socket. Écran de l'émulateur ici.
Le code de l'App.js :
function App() {
var PORT = 50000;
var HOST = '0.0.0.0';
const dgram = require('dgram');
const server = dgram.createSocket('udp4');
server.on('listening', function () {
var address = server.address();
console.log('UDP Server listening on ' + address.address + ":" +
address.port);
});
server.on('message', function (message, remote) {
console.log('Message', message);
});
server.bind(PORT, HOST);
}
export default App;
Des idées ? Ce n'est pas une erreur indéfinie...
Sortie d'erreur complète :
null n'est pas un objet (évaluation de 'Sockets.createSocket') - noeud_modules \react -native-udp \UdpSocket.js :58:7 dans UdpSocket - modules_noeuds \react -native-udp \UdpSockets.js :10:35 in exports.createSocket * App.js:11:0 in App - noeud_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:10696:27 in renderWithHooks - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:13481:6 in mountIndeterminateComponent - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:307:15 in invokeGuardedCallbackImpl - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:531:36 in invokeGuardedCallback - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:20488:8 in beginWork$$1 - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:19370:24 in performUnitOfWork - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:19347:39 dans workLoopSync - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:18997:22 in renderRoot * [native code]:null in renderRoot - node_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:18709:28 in runRootCallback * [code natif]:null in runRootCallback - node_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:5642:32 in runWithPriority$argument_1 - nœud_modules \scheduler\cjs\scheduler.development.js :643:23 dans unstable_runWithPriority - nœuds_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:5638:22 in flushSyncCallbackQueueImpl - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:5627:28 in flushSyncCallbackQueueue - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:18556:30 in scheduleUpdateOnFiber - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:21822:15 in scheduleRootUpdate - node_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:23042:20 in ReactNativeRenderer.render - nœuds_modules \react -native \Libraries\ReactNative\renderApplication.js :52:52 dans renderApplication - nœuds_modules \react -native \Libraries\ReactNative\AppRegistry.js :116:10 dans runnables.appKey.run - nœuds_modules \react -native \Libraries\ReactNative\AppRegistry.js :197:26 dans runApplication - nœuds_modules \react -native \Libraries\BatchedBridge\MessageQueue.js :436:47 dans __callFunction - modules_noeuds \react -native \Libraries\BatchedBridge\MessageQueue.js :111:26 dans __guard$argument_0 - noeud_modules \react -native \Libraries\BatchedBridge\MessageQueue.js :384:10 dans __guard - modules de nœuds \react -native \Libraries\BatchedBridge\MessageQueue.js :110:17 dans __guard$argument_0 * [code natif]:null dans callFunctionReturnFlushedQueueue
Avertissement : %s : Les frontières d'erreur doivent implémenter getDerivedStateFromError(). Dans cette méthode, renvoyez une mise à jour de l'état pour afficher un message d'erreur ou une interface utilisateur de repli., RootErrorBoundary - modules_noeuds \react -native \Libraries\YellowBox\YellowBox.js :63:8 dans console.error - nœuds_modules \expo\build\environment\muteWarnings.fx.js :27:24 en erreur - noeud_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:645:36 in warningWithoutStack - nœuds_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:18056:16 in callback - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:7595:16 in callCallback - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:7639:19 in commitUpdateEffects - nœuds_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:7630:22 in commitUpdateQueueue - nœud_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:17116:10 in commitLifeCycles - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:20002:23 in commitLayoutEffects - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:307:15 in invokeGuardedCallbackImpl - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:531:36 in invokeGuardedCallback - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:19768:10 in commitRootImpl * [code natif]:null dans commitRootImpl - node_modules \scheduler\cjs\scheduler.development.js :643:23 dans unstable_runWithPriority - nœuds_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:19590:4 in commitRoot * [code natif]:null dans commitRoot - node_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:18709:28 in runRootCallback * [code natif]:null in runRootCallback - node_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:5642:32 in runWithPriority$argument_1 - nœud_modules \scheduler\cjs\scheduler.development.js :643:23 dans unstable_runWithPriority - nœuds_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:5638:22 in flushSyncCallbackQueueImpl - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:5627:28 in flushSyncCallbackQueueue - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:18556:30 in scheduleUpdateOnFiber - modules_noeuds \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:21822:15 in scheduleRootUpdate - node_modules \react -native \Libraries\Renderer\implementations\ReactNativeRenderer -dev.js:23042:20 in ReactNativeRenderer.render - nœuds_modules \react -native \Libraries\ReactNative\renderApplication.js :52:52 dans renderApplication - nœuds_modules \react -native \Libraries\ReactNative\AppRegistry.js :116:10 dans runnables.appKey.run - nœuds_modules \react -native \Libraries\ReactNative\AppRegistry.js :197:26 dans runApplication - nœuds_modules \react -native \Libraries\BatchedBridge\MessageQueue.js :436:47 dans __callFunction - modules_noeuds \react -native \Libraries\BatchedBridge\MessageQueue.js :111:26 dans __guard$argument_0 - noeud_modules \react -native \Libraries\BatchedBridge\MessageQueue.js :384:10 dans __guard - modules de nœuds \react -native \Libraries\BatchedBridge\MessageQueue.js :110:17 in __guard$argument_0 * [code natif]:null dans callFunctionReturnFlushedQueueue