

現在、iOSのアプリを作成していますが、マナーモードでも、音を鳴らす処理で悩んでいます。

Objective-Cだと以下のコードになるかと思いますが

[code]

    AudioSessionInitialize(NULL, NULL, NULL, NULL);
    UInt32 category = kAudioSessionCategory_MediaPlayback;
    AudioSessionSetProperty(kAudioSessionProperty_AudioCategory,
                            sizeof(UInt32),
                            &category);
    AudioSessionSetActive = true
    
[/code]

上記コードを、Swiftに変換する方法がわかりません。  
一応、以下のイメージかと考えておりますが、`setProperty`のメソッドが存在しないように思われます。

[code]

    var audioSession = AVAudioSession.sharedInstance()
    audioSession.setProperty(・・・・
    audioSession.setActive(true, error: nil)
    
[/code]

どなたか、アドバイスをお願いできないでしょうか？  
何卒よろしくお願いいたします。


CC BY-SA 3.0
2015-02-06T03:13:54.113
6045
2015-02-07T13:06:15.813
2015-02-07T13:06:15.813
30
7571
question
ios swift
マナーモードでも音を鳴らすコードをSwiftで実装したい


playgroundでエラーがでないところまでしか確認していませんが

[code]

    var audioSession = AVAudioSession.sharedInstance()
    audioSession.setCategory(AVAudioSessionCategoryPlayback, error: nil)
    audioSession.setActive(true, error:nil)
    
[/code]

とすれば同じ内容になると思います。

[AVAudioSessionCategoryPlayback と kAudioSessionCategory_MediaPlayback
は同じとみて良さそうですが](https://stackoverflow.com/a/8700240/2513010)、必要に応じて
setCategoryWithOptionsで、ミキシングを可能にする
`AVAudioSessionCategoryOptionMixWithOthers`も指定した方が良いのかもしれません。


CC BY-SA 3.0
2015-02-06T04:52:40.667
6054
2015-02-06T04:52:40.667
2017-05-23T12:38:55.250
-1
728
6045
answer