5

MUSIC_PLAYER次のように開始して、アプリケーションで使用しました。

Intent myint = new Intent("android.intent.action.MUSIC_PLAYER");
startActivity(myint);

そして、このプレーヤーを一時停止したい。それ、どうやったら出来るの?

import android.media.AudioManager;

import android.media.MediaPlayer;

import android.os.Bundle;

import android.app.Activity;

import android.content.Intent;

import android.view.Menu;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Thread mtr = new Thread(){
            public void run()
            {
                try {
                    Intent myint = new Intent("android.intent.action.MUSIC_PLAYER");
                    startActivity(myint);
                    sleep(50000);
                    // Here I want to pause my application after those 50 seconds.
                }
                catch(InterruptedException e){
                    e.printStackTrace();
                }
                finally{
                    Intent myint = new Intent("nextscreen");
                    startActivity(myint);
                }
            }
        };
        mtr.start();
    }
}
4

3 に答える 3

4

Samsungデバイスでは、次のインテントで音楽プレーヤーを制御できます。

ICS:
"com.android.music.musicservicecommand.play"
"com.android.music.musicservicecommand.pause"
"com.android.music.musicservicecommand.next"
...

JB:
"com.sec.android.app.music.musicservicecommand.play"
"com.sec.android.app.music.musicservicecommand.pause"
"com.sec.android.app.music.musicservicecommand.next"
...

context.sendBroadcast(new Intent("com.sec.android.app.music.musicservicecommand.pause"));

もう 1 つの解決策は、AudioManager の requestAudioFocus です (放棄オーディオ フォーカスで解放することを忘れないでください)。例えば:

...
((AudioManager)getSystemService(Context.AUDIO_SERVICE)).requestAudioFocus(listener, AudioManager.STREAM_MUSIC, AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
...

...
((AudioManager)getSystemService(Context.AUDIO_SERVICE)).abandonAudioFocus(listener);
...
于 2013-01-21T11:06:28.593 に答える
3

そんなことはできません。音楽プレーヤーの一時停止は、ユーザーのみが使用できるアプリケーション内の内部アクションであるため、アプリケーションの外部からアクセス/呼び出しすることはできません。

ただし、 を呼び出してAudioManagerクラスを使用して音楽オーディオ ストリームをミュートすることはできますsetStreamMute(AudioManager.STREAM_MUSIC, true)

コードサンプル:

AudioManager am = (AudioManager)MainActivity.this.getSystemService(Context.AUDIO_SERVICE);
am.setStreamMute(AudioManager.STREAM_MUSIC, true);
于 2012-11-22T18:39:41.707 に答える
1

こちらの回答を参照してください。ブロードキャストを送信して、デフォルトの音楽プレーヤーを非常に簡単に一時停止または停止できます。

于 2015-02-20T23:53:37.663 に答える