8

Apple ヘッドフォンの音量ボタンを読み取り、カメラ シャッターのトリガーとして使用する方法を見つけようとしています (Apple Camera アプリのように)。

Remote Control Events Remote Control Received With Event、およびこの git repoに関するドキュメントから、このビューを作成するとともに、おそらくAVAudioPlayerオブジェクト 、.beginReceivingRemoteControlEvents()およびが必要になることをまとめました。remoteControlReceivedWithEventcanBecomeFirstResponder() 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

4

2 に答える 2