1

私のアプリケーションでは、次のコードを使用してオーディオファイルを再生します

Uri data = Uri.parse("file:/" + songnameandpath);
                intent.setDataAndType(data, "audio/*");

                            PackageManager packageManager = getActivity()
                                    .getPackageManager();
                            List<ResolveInfo> activities = packageManager
                                    .queryIntentActivities(intent, 0);
                            boolean isIntentSafe = activities.size() > 0;




                            if (isIntentSafe) {
                                startActivity(intent);

そのため、ユーザーが戻るボタンをクリックするとオーディオが停止し、ユーザーがアクティビティで戻るボタンを押してもオーディオを再生したい場合、さらにモバイルでオーディオがどのように再生されるかをバックグラウンドで再生する必要があります。

サンプルコードはとても役に立ちます。前もって感謝します

4

1 に答える 1

1

メディアプレーヤーで作業してみましたか?

これが私のために働いたコードです。一時停止/破棄メソッドを削除するか、それらを再定義するだけで、ユーザーが押し戻してもサウンドが再生されます..

public class MainActivity extends Activity {

    private MediaPlayer mp;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);
        mp= MediaPlayer.create (this, R.raw.sound); // sound is for example your mp3 song
        mp.start ();      
    }

    protected void onDestroy() {
        super.onDestroy();
        mp.release();
    }

    protected void onPause() {
        super.onPause();
        mp.pause();
    }

    protected void onResume() {
        super.onResume();
        mp.start();
    }

    protected void onStart() {
        super.onStart();
    }

}

アップデート

MediaPlayerは、stop 関数で明示的に停止しない限り、アクティビティが終了した後でもファイルの再生を続けます。

于 2012-11-30T14:02:25.483 に答える