

現在、音声録音を行っているのですが以下の書き換えがわかりません。  
もし教えていただける方がいらっしゃいましたらご指導の程よろしくお願いいたします。

[code]

    // 使用している機種が録音に対応しているか
    if ([audioSession inputIsAvailable]) {
        [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:&error];
    }
    if error {
        NSLog(@"audioSession: %@ %d %@", [error domain], [error code], [[error userInfo] description]);
    }
    
[/code]


CC BY-SA 3.0
2015-10-07T06:00:17.353
17340
2015-10-07T13:34:23.063
2015-10-07T13:34:23.063
5337
12536
question
swift
録音を行う処理のObjective-CからSwiftへの書き換え方法が分からない


こんな感じでどうでしょうか？  
（Xcode 7.0.1で確認）

[code]

    let audioSession = AVAudioSession.sharedInstance()
    
    // inputIsAvailableは廃止になったのでinputAvailableを使用
    if audioSession.inputAvailable {
    
        // Swift2でNSErrorの扱いがdo/try/catchに変更された
        do {
            try audioSession.setCategory(AVAudioSessionCategoryPlayAndRecord)
    
        } catch let err {
    
            // Swift2ではNSLogではなくprintを使用
            print("audioSession: \(err)")
        }
    }
    
[/code]


CC BY-SA 3.0
2015-10-07T11:28:43.360
17369
2015-10-07T11:28:43.360
7459
17340
answer