質問: [[CDVAudioRecorder alloc] initWithURL:audioFile.resourceURL settings:nil error:&error]; ^ ~~~ 2 warnings generated. ``` warningを手掛かりに自分なりに調べてみようと思っています。 何か、お心あたりがありましたら、些細なことでも構いませんのでご教授いただければ幸いです。
回答: `Monaca`も`Cordova`も`PhoneGap`も専門外なので、わけのわからないことを言っていたら、ごめんなさい。 > > その後、再度ビルドをし、ビルドログをチェックしておりました。 > > warningが2つ出ていましたので、関係あるかわかりませんが、記載いたします。 > > > `cordova-plugin-media`のバグでしょうね。現在は修正されているようです。 [CB-11817] audioSettings shows as unused variable and settings are not used when configuring a recorder - ASF JIRA CB-11817: (iOS) Fix unused recording settings by ghenry22 · Pull Request #116 · apache/cordova-plugin-media · GitHub 本件がこのバグによって引き起こされているのかは私には判断できません。またデバッガーの仕様を知らないので、デバッガーでなぜ動くかはわかりません。 `cordova-plugin-media: 2.3.0`を使われていると推測しますが、アップデートすることは可能ですか。 `cordova-plugin-media`のソースをチラッとみたところでは、以前お使いだった`cordova-plugin-media: 0.2.13`にはそもそもフォーマット設定がありませんでした。設定ができるようになったが、`AVAudioRecorder`には渡されていなかった。`settings:nil`でもデフォルトの設定が使われるだけなので、`Objective-C`的には問題なかった。といった感じでしょうか。 ### 追記 > > 「code:1 > > message:Cannot use audio file from resource'メディアのパス'」という表示がされます。 > > > 教えてください。`メディアのパス`とはどこが表示されていましたか。 既知のバグは関係なさそうですね。 ### 追記 コメントありがとうございます。 `Andriod`では動作しているとのことなので、`www/sample.mp3`のパスと存在は確認できました。 となると、`getPath()`で付け加えられている部分が`Objective-C`的に問題があったのでしょう。 `CDVSound.m`より抜粋 `- (CDVAudioFile*)audioFileForResource:(NSString*)resourcePath withId:(NSString*)mediaId doValidation:(BOOL)bValidate forRecording:(BOOL)bRecord` ``` if (resourceURL == nil) { bError = YES; errcode = MEDIA_ERR_ABORTED; errMsg = [NSString stringWithFormat:@"Cannot use audio file from resource '%@'", resourcePath]; } else { ``` そこでなのですが、`iOS`だけ`getPath()`をつけずに実行することは可能ですか? 例えば、仮想言語としてこんな感じで。 ``` if(monaca.isIOS === true){ media = new Media (src , onSuccess, onError); } ```