A Swifty way to take control over the volume buttons on iOS.
v0.2.0
class ViewController: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
//Register a volume up block
Volume.when(.up) {
print("UP!")
}
//Register a volume down block
Volume.down.when {
print("Down")
}
}
override func viewDidDisappear(_ animated: Bool) {
//Be sure to call this when you're finished
Volume.reset()
super.viewDidDisappear(animated)
}
}
- iOS 8+
- MediaPlayer.framework
- NO AVFoundation \o/
Because of this, I've dropped support for Cocoapods on this repo. I cannot have production code rely on a dependency manager that breaks this badly.
Why submodules, you ask?
Following this thread and other similar to it, and given that Cocoapods only works with Swift by adding the use_frameworks! directive, there's a strong case for not bloating the app up with too many frameworks. Although git submodules are a bit trickier to work with, the burden of adding dependencies should weigh on the developer, not on the user. 😉
To install Volumer using git submodules:
cd toYourProjectsFolder
git submodule add -b submodule --name Volumer https://github.com/BellAppLab/Volumer.git
Swift 2 support
git submodule add -b swift2 --name BLLogger https://github.com/BellAppLab/BLLogger.git
Then, navigate to the new Volumer folder and drag the Source
folder to your Xcode project.
Bell App Lab, apps@bellapplab.com
Volumer is available under the MIT license. See the LICENSE file for more info.