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

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

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

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

744閲覧

【android】if文の処理で音を鳴らしたいです

samesame

総合スコア6

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2018/02/06 16:48

ある一定の距離内(半径1キロ)にはいったら音が鳴るような仕組みを作りたいと思っています。

Java

1private void setLocation(Location location) { 2 LatLng myLocation = new LatLng(location.getLatitude(), location.getLongitude()); 3 mMap.addMarker(new MarkerOptions().position(myLocation).title("now Location")); 4 mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(myLocation, 10)); 5 6 if (-0.0090133729 + i1 < location.getLatitude() && location.getLatitude() < i1 + 0.0090133729 && k1 - 0.0109664047 < location.getLongitude() && location.getLongitude() < k1 + 0.0109664047) { 7 audioPlay(); 8 } 9 } 10 11 12 private boolean audioSetup() { 13 boolean fileCheck = false; 14 15 // rawにファイルがある場合 16 mediaPlayer = MediaPlayer.create(this, R.raw.n44); 17 // 音量調整を端末のボタンに任せる 18 19 20 setVolumeControlStream(AudioManager.STREAM_MUSIC); 21 fileCheck = true; 22 23 return fileCheck; 24 } 25 26 private void audioPlay() { 27 28 if (mediaPlayer == null) { 29 // audio ファイルを読出し 30 if (audioSetup()) { 31 Toast.makeText(getApplication(), "Rread audio file", Toast.LENGTH_SHORT).show(); 32 } else { 33 Toast.makeText(getApplication(), "Error: read audio file", Toast.LENGTH_SHORT).show(); 34 return; 35 } 36 } else { 37 // 繰り返し再生する場合 38 mediaPlayer.stop(); 39 mediaPlayer.reset(); 40 // リソースの解放 41 mediaPlayer.release(); 42 } 43 44 // 再生する 45 mediaPlayer.start(); 46 47 // 終了を検知するリスナー 48 mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 49 @Override 50 public void onCompletion(MediaPlayer mp) { 51 Log.d("debug", "end of audio"); 52 audioStop(); 53 } 54 }); 55 } 56 57 private void audioStop() { 58 // 再生終了 59 mediaPlayer.stop(); 60 // リセット 61 mediaPlayer.reset(); 62 // リソースの解放 63 mediaPlayer.release(); 64 65 mediaPlayer = null; 66 } 67

audioStopに関してはまだ条件を書いていません。
mediaplayerを使って音声を鳴らす方法を探しましたが、ボタンを押すというアクションの後に鳴るものしか見つからず、困っています。
プログラミング初心者なので初歩的なミスかもしれませんが、ご回答よろしくお願いいたします。

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

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

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

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

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

guest

回答1

0

自己解決

Java

1if (-0.0090133729 + i1 < location.getLatitude() && location.getLatitude() < i1 + 0.0090133729 && k1 - 0.0109664047 < location.getLongitude() && location.getLongitude() < k1 + 0.0109664047) { 2         audioSetup(); 3 audioPlay(); 4 }

で解決しました!!!!!!!!!!!!!!

投稿2018/02/06 17:57

samesame

総合スコア6

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

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

swordone

2018/02/06 18:10

ちなみにif文は if(Math.abs(location.getLatitude() - i1) < 0.0090133729 && Math.abs(location.getLongitude() - k1) < 0.0109664047) と書くとスマートです。
samesame

2018/02/08 07:38

ありがとうございます!新しい知識が増えました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問