我正在尝试将音乐添加到游戏中,但之后停止

时间:2019-03-28 20:55:12

标签: java android android-mediaplayer

所以我是脚本编程的新手,这是我构建的第一个应用程序,它遵循了一个教程,但是现在我想向其中添加音乐,但是在网上找到了一个小代码,但是音乐在1分钟后停止,而音乐应该持续7分钟? / p>

这里有人可以帮助我吗?

还有如何使歌曲循环播放?

我确实得到了这个“ MediaPlayer.setLooping(true);”,但我不知道它是否会起作用,所以也想问这个问题:p

感谢您的宝贵时间。

我一直在寻找类似的问题,并使用了这些答案,但没有用,因为我对此很陌生,所以我实施错了吗?。

我的代码。

package com.example.myapplication;

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.Window;
import android.view.WindowManager;

public class MainActivity extends Activity {


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);

    DisplayMetrics dm = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(dm);
    Constants.SCREEN_WIDTH = dm.widthPixels;
    Constants.SREEN_HEIGHT = dm.heightPixels;


    setContentView(new GamePanel(this));





    MediaPlayer Music = MediaPlayer.create(MainActivity.this,R.raw.music);
    Music.start();
    MediaPlayer.setLooping(true);
}

}

我想播放音乐并不断循环播放,而无需停止播放。

1 个答案:

答案 0 :(得分:0)

您需要WakeLock或后台服务才能在睡眠模式下播放音乐。我想您可以尝试使设备保持活动状态(轻按屏幕)并播放音乐。

1)唤醒锁。添加清单权限

<uses-permission android:name="android.permission.WAKE_LOCK" />

并调用Create方法:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);  
wakelock= pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, getClass().getCanonicalName());
wakelock.acquire();

docs

2)后台服务

docs

这要复杂得多,因为您需要创建通知等。但是您可以尝试遵循android docs。

3)阅读doc。这是带有唤醒锁和服务示例的指南。