java - 音乐文件播放 45 秒,然后在 Android 应用程序中停止
问题描述
我正在尝试通过在我的 android 手机上使用 android studio 和 Java 来制作游戏。当我将音乐文件放入应用程序时,它会播放,但只播放 45 秒并停止。我已经在其他几个音乐文件上对其进行了测试,看看它是否是音乐文件,但我仍然得到同样的错误。我的目标是让音乐像在游戏中一样循环播放。我尝试了各种 youtube 视频并查看了其他网站,但我仍然会遇到同样的问题或无法编译代码。
package com.example.androidstudio2dgamedevelopment;
import static android.media.MediaPlayer.*;
import android.animation.Animator;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;
import android.media.MediaPlayer;
import android.view.WindowManager;
import java.util.Vector;
/**
* Main Activity is the entry point to our application
*/
public class MainActivity extends Activity {
private int width;
private int height;
MediaPlayer bkgrdmsc;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MediaPlayer mediaPlayer = create(this, R.raw.fg);
mediaPlayer.setLooping(true);
mediaPlayer.start();
//Set Window to fullscreen (will hide status bar)
Window window = getWindow();
this.width = (240);
this.height = (240);
//Set Content view to game, so that objects in the Game Class can be rendered to the screen
setContentView(new Game(this));
}
}
解决方案
只需为媒体播放器添加 setLooping(true)。
Uri uri = createUri(context, R.raw.fg);
Mediaplayer mediaPlayer= new MediaPlayer();
mediaPlayer.setDataSource(context, uri);
mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mediaPlayer.prepare();
mediaPlayer.setLooping(true);
mediaPlayer.start();
推荐阅读
- java - 无法通过代理从 Firebase Java 应用程序发送通知到移动应用程序
- android - ImageView 的原生圆形波纹效果
- javascript - 无法使用 indexof 匹配值
- google-apps-script - 我无法为我的 Gmail 运行 Google Apps 脚本
- .net-core - 在 dotnet core 中创建主题的最佳实践
- javascript - 谷歌表格合并单元格
- php - 无法在 Ubuntu 18.04 终端中更改 PHP 版本
- java - 片段被销毁时如何在 .get() 方法上删除 OnCompleteListener?
- botframework - github 上 tompaana 的 Agent Handoff intermediator-bot-sample (c#) 无法将 Microsoft.Bot.Builder 和相关软件包升级到 Ver 4.10.3
- bamboo - 竹子中的后处理 xcodebuild 测试输出