PeerConnectivity alternatives and similar libraries
Based on the "Bluetooth" category.
Alternatively, view PeerConnectivity alternatives based on common mentions on social networks and blogs.
-
BabyBluetooth
:baby: The easiest way to use Bluetooth (BLE )in ios/os ,even bady can use . 一个非常容易使用的蓝牙库,适用于ios和os -
BluetoothKit
Easily communicate between iOS/OSX devices using BLE -
Bluejay
A simple Swift framework for building reliable Bluetooth LE apps. -
PeerKit
An open-source Swift framework for building event-driven, zero-config Multipeer Connectivity apps -
Discovery
A very simple library to discover and retrieve data from nearby devices (even if the peer app works at background). -
Bleu
BLE (Bluetooth LE) for U🎁 Bleu is the best in the Bluetooth library. -
LGBluetooth
Simple, block-based, lightweight library over CoreBluetooth. Will clean up your Core Bluetooth related code. -
simple-share
Easy Proximity-based Bluetooth LE Sharing for iOS -
CocoaMultipeer
This repository is a peer to peer framework for OS X, iOS and watchOS 2 that presents a similar interface to the MultipeerConnectivity framework (which is iOS only) that lets you connect any 2 devices from any platform. This framework works with peer to peer networks like bluetooth and ad hoc wifi networks when available it also falls back onto using a wifi router when necessary. It is built on top of CFNetwork and NSNetService -
ExtendaBLE
Blocks Based Bluetooth LE Connectivity framework for iOS/watchOS/tvOS/OSX. Quickly configure centrals & peripherals, perform read/write operations, and respond characteristic updates. -
AZPeerToPeerConnection
AZPeerToPeerConnectivity is a wrapper on top of Apple iOS Multipeer Connectivity framework. It provides an easier way to create and manage sessions. Easy to integrate -
Apple Family
A simple framework that brings Apple devices together - like a family
Appwrite - The open-source backend cloud platform
* 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 PeerConnectivity or a related project?
README
A functional wrapper for the MultipeerConnectivity framework.
PeerConnectivity is meant to have a lightweight easy to use syntax, be extensible and flexible, and handle the heavy lifting and edge cases of the MultipeerConnectivity framework quietly in the background.
Please open an issue or submit a pull request if you have any suggestions!
🔌 Blog post https://goo.gl/HJcMbE
Installation
Cocoapods
The easiest way to get started is to use CocoaPods. Just add the following line to your Podfile:
pod 'PeerConnectivity', '~> 0.5.4'
Carthage
github "rchatham/PeerConnectivity"
Creating/Stopping/Starting
var pcm = PeerConnectionManager(serviceType: "local")
// Start
pcm.start()
// Stop
// - You should always stop the connection manager
// before attempting to create a new one
pcm.stop()
// Can join chatrooms using PeerConnectionType.Automatic, .InviteOnly, and .Custom
// - .Automatic : automatically searches and joins other devices with the same service type
// - .InviteOnly : provides a browserViewController and invite alert controllers
// - .Custom : no default behavior is implemented
// The manager can be initialized with a contructed peer representing the local user
// with a custom displayName
pcm = PeerConnectionManager(serviceType: "local", connectionType: .Automatic, displayName: "I_AM_KING")
// Start again at any time
pcm.start() {
// Do something when finished starting the session
}
Sending Events to Peers
let event: [String: Any] = [
"EventKey" : Date()
]
// Sends to all connected peers
pcm.sendEvent(event)
// Use this to access the connectedPeers
let connectedPeers: [Peer] = pcm.connectedPeers
// Events can be sent to specific peers
if let somePeerThatIAmConnectedTo = connectedPeers.first {
pcm.sendEvent(event, toPeers: [somePeerThatIAmConnectedTo])
}
Listening for Events
// Listen to an event
pcm.observeEventListenerForKey("someEvent") { (eventInfo, peer) in
print("Received some event \(eventInfo) from \(peer.displayName)")
guard let date = eventInfo["eventKey"] as? Date else { return }
print(date)
}
// Stop listening to an event
pcm.removeListenerForKey("SomeEvent")
Acknowledgments
Icon from the Noun Project.
Helpful links
Check out the Demo project and Playground for examples to help you take you're app to the next level!!!
Read the docs!
*Note that all licence references and agreements mentioned in the PeerConnectivity README section above
are relevant to that project's source code only.