Apple ヘッドフォンの音量ボタンを読み取り、カメラ シャッターのトリガーとして使用する方法を見つけようとしています (Apple Camera アプリのように)。
Remote Control Events、
Remote Control Received With Event、およびこの git repoに関するドキュメントから、このビューを作成するとともに、おそらくAVAudioPlayer
オブジェクト 、.beginReceivingRemoteControlEvents()
およびが必要になることをまとめました。remoteControlReceivedWithEvent
canBecomeFirstResponder()
return true
import UIKit
import AVFoundation
class ViewController: UIViewController, AVAudioPlayerDelegate {
var player: AVAudioPlayer!
override func viewDidLoad() {
super.viewDidLoad()
var session: AVAudioSession = AVAudioSession.sharedInstance()
session.setActive(true, error: nil)
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
println("viewDidAppear worked...")
self.becomeFirstResponder()
UIApplication.sharedApplication().beginReceivingRemoteControlEvents()
}
override func canBecomeFirstResponder() -> Bool {
return true
}
override func remoteControlReceivedWithEvent(event: UIEvent) {
let rc = event.subtype
println("does this work? \(rc.rawValue)")
//takePicture()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
"does this work"
ヘッドフォンの音量ボタンを押したときに得られると思っていましたが、通常のようにヘッドフォンの音量を調整するだけです。だから私は何かが欠けているに違いない、おそらくdelegate
またはでAVSession
?