Tag: android mediaplayer

如何从不同的活动更改媒体播放器

我想知道我是否可以在一个活动中声明媒体播放器变量,然后在单独的活动中暂停或停止它。 我将如何解决这个问题还是有另一种方式? 谢谢

在Android问题上播放带有MediaPlayer类的mp3

我的代码出了什么问题? 我有一个切换按钮,我想播放/停止一个MP3。 我猜代码应该如下: package com.android.iFocus; import android.app.Activity; import android.media.MediaPlayer; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.ToggleButton; public class iFocusActivity extends Activity implements OnClickListener { public int count; MediaPlayer mediaPlayer = MediaPlayer.create(this, R.raw.rain); /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ToggleButton toggleRain = (ToggleButton)findViewById(R.id.toggleRain); //Define […]

谁知道android媒体播放器按LogCat中的int值说明?

我有一个使用Android MediaPlayer类的实现。 我不断碰到各种错误,更改代码,碰到另一个错误。 根据错误,我收到从MediaPlayer报告的LogCat错误消息: “ xyz在状态x中调用”。 我不想为我遇到的每个bug发布一个post,我宁愿得到一切,并自己修复bug。 但我找不到任何可以告诉我哪个州号映射到哪个州的文件 ,正如MediaPlayer在线文档中所描述的那样。 有人可以发布这样的列表的链接,或在这篇文章中提供列表吗? 我想我不会是唯一会欣赏这一点的人。

媒体播放器在R.raw上失败 – Android

导入import android.media.MediaPlayer ,我被告知raw cannot be resolved private void playSound(){ MediaPlayer mp = MediaPlayer.create(this, R.raw.Jam); … 我是Android新手,什么是raw的? 以及如何解决这个问题?

如何将MediaMetadataRetriever SetDataSource用于外部存储中的文件

我正在尝试从MP3文件中提取专辑封面但是我无法给出合适的歌曲位置,我可以将其赋予SetDataSource方法。 我尝试了一切,但它仍然给我错误IllegalArgumentException 。 这一切都发生在这行metaRetriver.setDataSource(MainActivity.this, Uri.parse(“/sdcard/song.mp3”)); 被执行 我的代码。 public class MainActivity extends AppCompatActivity { MediaMetadataRetriever metaRetriver; byte[] art; ImageView album_art; Bitmap songImage; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getInit(); metaRetriver = new MediaMetadataRetriever(); metaRetriver.setDataSource(MainActivity.this, Uri.parse(“/sdcard/song.mp3”)); art = metaRetriver.getEmbeddedPicture(); if (art != null) { songImage = BitmapFactory .decodeByteArray(art, 0, art.length); album_art.setImageBitmap(songImage); } else { String […]

如何将方法设置为数组

我正在尝试显示多个媒体商店列,如艺术家,专辑,标题等。我能够正确地获得arraylist中的一个列并且它正在工作但是当我添加另一个列时我得到的所有列都在同一列中数组列表,所以我创建了一个类,并在该类方法中添加列。但我无法在客户端适配器中声明它是我的代码。 活动主体 private ArrayList audioList = new ArrayList (); private void External() { try { String[] proj = { MediaStore.Audio.Media._ID, MediaStore.Audio.Media.TITLE, MediaStore.Audio.Media.ARTIST, MediaStore.Audio.Media.ALBUM }; // Can include more data for more details and check it. String selection = MediaStore.Audio.Media.DURATION + “>=90000″; String[] selectionArgs = null; String sortOrder = MediaStore.Audio.Media.TITLE + ” ASC”; Cursor audioCursor = […]

当应用程序进入后台时停止MediaPlayer服务

我有一个媒体播放器服务,在我的应用程序的后台播放音乐,如: public class Music extends Service { MediaPlayer player; @Override public IBinder onBind(Intent intent) { return null; } public void onCreate() { player = MediaPlayer.create(this, R.raw.music); player.setLooping(true); } public int onStartCommand(Intent intent, int flags, int startId) { player.start(); return Service.START_NOT_STICKY; } public void onDestroy() { player.stop(); player.release(); stopSelf(); super.onDestroy(); } 问题是,当用户更改应用程序或进入手机的主屏幕(应用程序进入后台)时,音乐仍在播放。 我试图在onStop和onDestroy方法中停止它,但是这会在我改变活动时停止音乐,这是我不想要的(我希望音乐在用户导航活动时继续播放)。 更新 我试过广播: 我补充道 […]

MediaPlayer.create()始终返回null

我之前使用过媒体播放器,我从未遇到过这个问题。 每当我尝试使用MediaPlayer.create()时,该方法都会为null,我无法播放我的声音。 有什么我想念的吗? public class Game extends Activity { private MediaPlayer mp = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.game); mp = MediaPlayer.create(getBaseContext(), R.raw.sound); } } 我的sound.mp3在我的原始文件夹中,我通过将声音拖到eclipse中的文件夹放在那里。 请帮助,因为我之前播放过声音,这真是烦我:(