React Native UDP socket API for Android & iOS
npm install react-native-udp-tsReact Native UDP socket API for Android & iOS. It allows you to create UDP sockets, imitating Node's dgram API functionalities (check each method documentation for more information).
_This module is used by Tradle._
- Getting started
- Compatibility
- Usage
- Maintainers
- License
Install the library using either Yarn:
```
yarn add react-native-udp
or npm:
``
npm install --save react-native-udp
#### Using React Native >= 0.60
Linking the package manually is not required anymore with Autolinking.
- iOS Platform:
$ cd ios && pod install && cd .. # CocoaPods on iOS needs this extra step
#### Using React Native < 0.60
You then need to link the native parts of the library for the platforms you are using. The easiest way to link the library is using the CLI tool by running this command from the root of your project:
$ react-native link react-native-udp
If you can't or don't want to use the CLI tool, you can also manually link the library using the instructions below (click on the arrow to show them):
Manually link the library on iOS
1. In XCode, in the project navigator, right click Libraries ➜ Add Files to [your project's name]node_modules
2. Go to ➜ react-native-udp and add UdpSockets.xcodeprojlibUdpSockets.a
3. In XCode, in the project navigator, select your project. Add to your project's Build Phases ➜ Link Binary With LibrariesCmd+R
4. Run your project ()<
Manually link the library on Android
1. Open up android/app/src/main/java/[...]/MainApplication.java
- Add import com.tradle.react.UdpSocketsModule; to the imports at the top of the filenew UdpSocketsModule()
- Add to the list returned by the getPackages() method
2. Append the following lines to android/settings.gradle:`
`
include ':react-native-udp'
project(':react-native-udp').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-udp/android')
android/app/build.gradle
3. Insert the following lines inside the dependencies block in :compile project(':react-native-udp')
| React Native Version | Use Version |
| -------------------- | ----------- |
| <=0.59.10 | <=2.7.0 |
| >=0.60.0 | >=3.0.0 |
_see/run index.js for a complete example, but the interface is like dgram's_
`js
import dgram from 'react-native-udp'
const socket = dgram.createSocket('udp4')
socket.bind(12345)
socket.once('listening', function() {
socket.send('Hello World!', undefined, undefined, remotePort, remoteHost, function(err) {
if (err) throw err
console.log('Message sent!')
})
})
socket.on('message', function(msg, rinfo) {
console.log('Message received', msg)
})
`
To log all info emitted from the socket, add debug option when creating the socket:
`js`
const socket = dgram.createSocket({
type: 'udp4',
debug: true,
})
- Rapsssito [Support me :heart:]
- Mark Vayngrib
The library is released under the MIT license. For more information see LICENSE`.