MultiPeer alternatives and similar libraries
Based on the "Network" category.
Alternatively, view MultiPeer alternatives based on common mentions on social networks and blogs.
-
Perfect
Server-side Swift. The Perfect core toolset and framework for Swift Developers. (For mobile back-end development, website and API development, and moreβ¦) -
SwiftSoup
SwiftSoup: Pure Swift HTML Parser, with best of DOM, CSS, and jquery (Supports Linux, iOS, Mac, tvOS, watchOS) -
Zewo
Lightweight library for web server applications in Swift on macOS and Linux powered by coroutines. -
BlueSocket
Socket framework for Swift using the Swift Package Manager. Works on iOS, macOS, and Linux. -
Connectivity
π Makes Internet connectivity detection more robust by detecting Wi-Fi networks without Internet access. -
WKZombie
WKZombie is a Swift framework for iOS/OSX to navigate within websites and collect data without the need of User Interface or API, also known as Headless browser. It can be used to run automated tests / snapshots and manipulate websites using Javascript. -
PeerKit
An open-source Swift framework for building event-driven, zero-config Multipeer Connectivity apps -
Digger
Digger is a lightweight download framework that requires only one line of code to complete the file download task -
SOAPEngine
This generic SOAP client allows you to access web services using a your iOS app, Mac OS X app and AppleTV app.
InfluxDB high-performance time series database

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of MultiPeer or a related project?
README
A wrapper for Apple's MultipeerConnectivity framework for offline data transmission between Apple devices. This framework makes it easy to automatically connect to multiple nearby devices and share information using either bluetooth or wifi radios.
Features
- [x] Supports iOS/macOS/tvOS
- [x] Auto Connection
- [x] Auto Invitations/Advertising
- [x] Send/Receive data via MultipeerConnectivity Framework
- [x] Specify data types for easy handling
Integration
CocoaPods
You can use CocoaPods to install MultiPeer
by adding it to your Podfile
:
pod 'MultiPeer'
Carthage
You can use Carthage to install MultiPeer
by adding it to your Cartfile
:
github "dingwilson/MultiPeer"
Swift Package Manager
For SPM, add the following to your package dependencies:
.package(url: "https://github.com/dingwilson/MultiPeer.git", .upToNextMinor(from: "0.0.0"))
Usage
To get started, import MultiPeer.
import MultiPeer
Then, simply initialize MultiPeer with the name of your session (serviceType
). There are two modes of connections (advertiser
and browser
). To utilize both, simply use .autoConnect()
.
MultiPeer.instance.initialize(serviceType: "demo-app")
MultiPeer.instance.autoConnect()
Any data transmitted by MultiPeer will always be accompanied by a numerical "type", to ensure other peers know what kind of data is being received, and how to properly process it. You can manage this by creating a UInt32
enum, as shown below:
enum DataType: UInt32 {
case string = 1
case image = 2
// ...
}
To send data, simply use the .send(object: type:)
function:
MultiPeer.instance.send(object: "Hello World!", type: DataType.string.rawValue)
To receive data, we must conform to the MultiPeerDelegate
protocol:
func multiPeer(didReceiveData data: Data, ofType type: UInt32, from peerID: MCPeerID) {
switch type {
case DataType.string.rawValue:
let string = data.convert() as! String
// do something with the received string
break
case DataType.image.rawValue:
let image = UIImage(data: data)
// do something with the received UIImage
break
default:
break
}
}
func multiPeer(connectedDevicesChanged devices: [String]) {
}
Ensure that you set the MultiPeer delegate.
MultiPeer.instance.delegate = self
Finally you'll need to enable incoming / outgoing connections in your entitlements.
Congratulations! You have successfully sent data using MultiPeer! For more detailed information (including details of other functions), please see the docs.
Example
For an example app using MultiPeer, checkout MultiPeer_Sample.
License
MultiPeer
is released under an MIT License. See [LICENSE](LICENSE) for details.
Authors
Project heavily inspired by Apple-Signal.
*Note that all licence references and agreements mentioned in the MultiPeer README section above
are relevant to that project's source code only.