2018年12月3日月曜日

変なエラー/Unknown selected data source for Port スピーカー (type: Speaker)

[avas] AVAudioSessionPortImpl.mm:56:ValidateRequiredFields: Unknown selected data source for Port スピーカー (type: Speaker)

「スピーカーに対して、不明のデータソースが選ばれた」ってことか。

iOS12、Swift4.2、Xcode10になってから、上記のメッセージがずらずらと出るようになった。何も操作してないのに0.何秒かおきに次々と出る、もしくは数回出て止まったり。
ただWarningみたいなもので、実行上問題は出ていない。

音を鳴らすアプリではあるのだが、まだ音に関しての操作もコードもないViewControllerを実行中に出るので、コードの変更があったというよりはXcodeの設定を変更しなけりゃいけないのかもしれない。

ネットで調べると、Swift4.2でAVAudioSessionの関係で変更があり、try文を記述してどうのこうのと書いてあるが、音の操作関係のコードがないところでいっぱい出てるので、直しようがない。そもそもAVAudioSessionのコード書いてないし。

データソースが不明ということで音源ファイルが原因っぽいが、使ってるのはそれぞれmp3、m4r、m4aのフォーマットの音源なのだが、Xcodeの設定をどこかでいじらねばいけないのか?

原因はAdMob

広告にGoogleのAdMobを表示させてるんだけど、それが悪さしていたようで、AdMob表示させないようにしたらメッセージが出なくなった。

Google Mobile Ads SDK Developers掲示板でもその件が話されている。いつの投稿か日付がわかんないんだけど、最新の日付が2018/9/18頃らしいので、まあその少し前くらいだろう。
AdMob内でAVAudioSessionを使用してて、それの改修が遅れてるんだろう。
ちなみに現時点で最新のAdMobSDK 7.36.0(2018/9/10リリースらしい)にしてみたけどダメだった。
うざいメッセージだけど、実用上問題ないし、俺が悪いわけじゃないからいいや。さっさと直してほしいけどね。

Googleって高い給料もらってるすごいエンジニアばかりだと思うんだけど、こういうのを直すのがすごい遅い。直されないことも多いし。変な入社試験で人を選んでるせいでエンジニアが足りないの?

0 件のコメント:

コメントを投稿