質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

解決済

1回答

2860閲覧

Monacaのcordova-plugin-mediaの使い方について

130101cem

総合スコア6

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

0グッド

0クリップ

投稿2017/10/05 05:43

###前提・実現したいこと
お世話になります。
初めて質問させていただきます。

Monacaで自作アプリの開発を行っているのですが、
cordova-plugin-mediaを使用して、音を鳴らしたいと思っております。

公式チュートリアルにある、サンプルプログラムを動かしているのですが、
再生ボタンを押しても、音が鳴ることはありません。

どうやら、「Media」クラスが存在しないようなのですが、
Cordovaプラグインの追加以外に、前提条件はあるのでしょうか。

とても簡単な問題を見落としているだけな気がするのですが、
一人では埒が明かないため、質問させていただきました。

どうかよろしくお願いいたします。

###発生している問題・エラーメッセージ

Media is not define

###該当のソースコード

<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <!--<meta http-equiv="Content-Security-Policy" content="default-src * data: gap: https://ssl.gstatic.com; style-src * 'unsafe-inline'; script-src * 'unsafe-inline' 'unsafe-eval'">--> <script src="components/loader.js"></script> <link rel="stylesheet" href="components/loader.css"> <link rel="stylesheet" href="css/style.css"> <script> var media = null; var mediaTimer = null; var srcFile = "http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3"; if(typeof device === 'undefined'){ document.addEventListener("deviceready", onDeviceReady, false); }else{ onDeviceReady(); } function onDeviceReady() { console.log("ready"); // 問題の「Media is not define」が発生する箇所 media = new Media (srcFile , onSuccess, onError); } function playSound(){ // play the media file one time. media.play({numberOfLoops: 0}); // start the timer if (mediaTimer == null) { mediaTimer = setInterval(function() { // Return a current playback position media.getCurrentPosition( //A Callback function if it's success function(position) { if (position > -1) { //If the playback stops at "-0.001" position, set the timer to 0. if(position == -0.001){ position = 0; } setAudioPosition((position) + " sec"); } }, //A callback function in case of failure function(error) { console.log("Error getting pos=" + error); setAudioPosition("Error: " + error); } ); }, 1000); } } function pauseSound(){ if (media) { media.pause(); } } function stopSound(){ if (media) { media.stop(); } } function setAudioPosition(position) { document.getElementById('audio_position').innerHTML = position; } function onSuccess(){ console.log("Successfully initialize a media file."); } function onError(error){ console.log("Failed to initialize a media file. [ Error code: " + error.code + ", Error message: " + error.message + "]"); } </script> </head> <body style="text-align: center"> <h1>Playing Sound</h1> <button onclick="playSound()">Play</button> <button onclick="pauseSound()">Pause</button> <button onclick="stopSound()">Stop</button><br /> <p id="audio_position"></p> </body> </html>

###試したこと
ブラウザ上のデバッグのみでチュートリアルの通りにしました。
ビルドは一日の制限に引っかかり、現状はできていません。
Mediaの宣言をbodyのonload後にもしてみましたが、ダメでした。
###補足情報(言語/FW/ツール等のバージョンなど)
インストール済みのプラグイン
cordova-plugin-media v3.0.1
cordova-custom-config v2.0.3
mobi.monaca.plugins.Monaca
cordova-plugin-splashscreen v4.0.3
cordova-plugin-whitelist v1.3.1

インストール済みのコンポーネントJS/CSS
Cordova (PhoneGap) Loader バージョン:1.0.0
jQuery (Monaca Version) バージョン:2.0.3
Monaca Core Utility バージョン:2.0.6

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決です。
ブラウザ上のmonacaデバッグではMediaは使用不可でした。
スマホ上のmonacaデバッガーで確認したところ、音が鳴っておりました。

投稿2017/10/05 06:32

130101cem

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問