私のウェブサイトにAndroidアプリケーションを作成しています。それはポッドキャストのようないくつかのビデオを持っています。ユーザーが画面をロックしたり他のアプリケーションを使用したりしているときに、バックグラウンドでオーディオを再生できるようにする。これを実現するために、WebViewを導入しました。上記の機能を提供するために、私はそのアクティビティでPARTIAL_WAKE_LOCKを使用しようとしました。これは、画面がロックされているときにオーディオを再生し続けますが、ホームボタンが押されたとき(つまり、バックグラウンドで)は再生されません。この問題の回避策はありますか?あなたのアプリは、それが背景にある場合でも、オーディオを実行し続けるようにしたい場合はWebViewオーディオをバックグラウンドで再生する
答えて
、あなたは、バックグラウンドに行くか、戻ってくる。このサービスはさらにアプリを実行し続けますSeparate Service.
でのMediaPlayerを実行する必要があります。 アプリが強制終了された場合は、スティッキサービスを実行して(フォアグラウンドをtrueにして)実行することもできます。
しかし、WebViewはUIエレメントなので、別のサービススレッドで実行できないと思っていました。 –
@NathanMatthewsあなたは、そのオーディオをonPauseメソッドのどこかで一時停止していますか?理想的には、ホームボタンを押しただけで再生を続ける必要があります。 –
スティッキーサービスが機能しました。ありがとうございます –
あなたはこの例では、あなたのactivity.Pleaseルックの音楽の独立を再生するにはアンドロイドサービスを使用する必要があります。ここでは
は私のAndroidのサービスクラスである:ここで
class MusicService extends Service implements OnCompletionListener {
MediaPlayer mediaPlayer;
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
mediaPlayer = MediaPlayer.create(this, R.raw.s);// raw/s.mp3
mediaPlayer.setOnCompletionListener(this);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
if (!mediaPlayer.isPlaying()) {
mediaPlayer.start();
}
return START_STICKY;
}
public void onDestroy() {
if (mediaPlayer.isPlaying()) {
mediaPlayer.stop();
}
mediaPlayer.release();
}
public void onCompletion(MediaPlayer _mediaPlayer) {
stopSelf();
}
}
アクティビティです:
public class MusicActivity extends Activity implements OnClickListener {
Button startPlaybackButton, stopPlaybackButton;
Intent playbackServiceIntent;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
startPlaybackButton = (Button) this.findViewById(R.id.StartPlaybackButton);
stopPlaybackButton = (Button) this.findViewById(R.id.StopPlaybackButton);
startPlaybackButton.setOnClickListener(this);
stopPlaybackButton.setOnClickListener(this);
playbackServiceIntent = new Intent(this,MusicService.class);
}
public void onClick(View v) {
if (v == startPlaybackButton) {
startService(playbackServiceIntent);
finish();
} else if (v == stopPlaybackButton) {
stopService(playbackServiceIntent);
finish();
}
}
}
マニフェストファイルにサービスを追加することを忘れないでください。
<service android:enabled="true" android:name=".services.MusicService" />
私は、webviewでビデオを再生し、バックグラウンドでオーディオを再生したいと考えています。 –
- 1. バックグラウンドでオーディオを再生する方法
- 2. アプリがバックグラウンドのときにオーディオを再生するには?
- 3. MediaPlayerのは、バックグラウンドでオーディオを再生し、私は、バックグラウンドでオーディオを再生するために、コードの下に使用するもの
- 4. AVQueuePlayerのiOS5でバックグラウンドでオーディオ再生ができない
- 5. フェイザーゲームのオーディオはwebviewで再生できません。アンドロイド4.2
- 6. アプリがバックグラウンドに行くときにオーディオが再生される
- 7. Tomcat:オーディオを再生する
- 8. HTML5 - 再生オーディオ
- 9. xcodeでオーディオを再生
- 10. クロムエクステンションをバックグラウンドで再生
- 11. ASP.NETでビデオやオーディオを再生する
- 12. Node.JSでオーディオを再生する
- 13. iOS:サイレントモードでオーディオを再生する
- 14. iOSのコントロールでオーディオを再生する
- 15. QtバッファアンダーランでRAWオーディオを再生する
- 16. オーディオ再生でマーキーを開始する
- 17. iphoneゲームでオーディオを再生する
- 18. オーディオ/サウンドをplsqlで再生する
- 19. MPMoviePlayerControllerでオーディオを再生する
- 20. iphone - バックグラウンドでオーディオストリームを再生する
- 21. 反応するネイティブのiOSアプリのWebViewがビデオを再生が、オーディオ
- 22. Android webviewでビデオを再生
- 23. WebViewで.mp4を再生
- 24. Android - WebViewを終了してもオーディオが再生され続ける
- 25. iOS:オーディオをバックグラウンドで再生するかどうかをユーザーが選択できるようにする
- 26. 目的c再生中のオーディオを再生する
- 27. キャッシュディレクトリからオーディオを再生する
- 28. jarファイルからオーディオを再生する
- 29. オーディオをストリーミングしてそのオーディオを再生する方法
- 30. オーディオを録音して同時にオーディオを再生する
メディアプレーヤーで音声を再生するための回答が出ました。私は、webviewでビデオを再生し、バックグラウンドでオーディオを再生するために探しています。 –
助けてくれてありがとう!とにかくサービスを使って解決しました。 –
webViewを実行するために別のサービスを実装しましたが、まだこの問題があります。これをどうやって正しく行うかという手がかりがありますか? – aquawicket