大家好,我们今天要利用AndroidMediaPlayer
Step 1:preparation work.
mksdcard 512M sdcard.img
create a new avd named AndroidSdcard
push songs into sdcard(before you push,you make sure your avd is running,else the operation of push will not work):
adb push f:/music/1.mp3 /sdcard
Step 2: Layout UI desigen:
create two .xml files we called song_item.xml and songlist.xml the code are:
song_item.xml:
<?xml version="1.0" encoding="utf-8"?>
<TextView android:id="@+id/text1" xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
songlist.xml:
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView android:id="@id/android:list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1"
android:drawSelectorOnTop="false"/>
<TextView android:id="@id/android:empty"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="No songs found on SD Card."/>
</LinearLayout>
Step 3: the core code MeusicDemo.java:
package com.android.test;
import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import android.app.ListActivity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
class Mp3Filter implements FilenameFilter {
public boolean accept(File dir, String name) {
return (name.endsWith(".mp3"));
}
}
public class MeusicDemo extends ListActivity {
private static final String MEDIA_PATH = new String("/sdcard/");
private List<String> songs = new ArrayList<String>();
private MediaPlayer mp = new MediaPlayer();
@Override
public void onCreate(Bundle icicle) {
try {
super.onCreate(icicle);
setContentView(R.layout.songlist);
updateSongList();
} catch (NullPointerException e) {
Log.v(getString(R.string.app_name), e.getMessage());
}
}
public void updateSongList() {
File home = new File(MEDIA_PATH);
if (home.listFiles( new Mp3Filter()).length > 0) {
for (File file : home.listFiles( new Mp3Filter())) {
songs.add(file.getName());
}
ArrayAdapter<String> songList = new ArrayAdapter<String>(this,R.layout.song_item,songs);
setListAdapter(songList);
}
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
try {
mp.reset();
mp.setDataSource(MEDIA_PATH + songs.get(position));
mp.prepare();
mp.start();
} catch(IOException e) {
Log.v(getString(R.string.app_name), e.getMessage());
}
}
}
Step 4:run it.the result like this:
now u can enjoy the music.lol~
if u wanna the source code please leave your email address, i will send u!
分享到:
相关推荐
Android 中级教程之------Android MediaPlayer播放mp3的实例 是提示性代码!
Android MediaPlayer Playback---多媒体开发应用程序接口
Android MediaPlayer播放mp3的实例
Android MediaPlayer 简单综合应用
Android下MediaPlayer播放MP3示例,详细参见博客:http://www.cnblogs.com/plokmju/p/android_MediaPlayer.html
安卓播放mp3 将其中的mp3文件放到 sdcard卡中即可!
此类是用MediaPlayer播放MP3音频文件的。封装好的代码,大家可以借鉴使用。简单入门,欢迎大家免费下载。
Android MediaPlayer 自定义循环次数
Android 使用MediaPlayer播放assets或者raw目录的音频文件 https://blog.csdn.net/qq_31939617/article/details/80491552
Android MediaPlayer使用方法简单介绍
这是一个简单的带有进度条的mediaplayer音频播放器demo,只有一个按键,用来播放和暂停。进度条可以通过拖动来改变播放的进度。供Android初学者参考
Android 视频播放demo MediaPlayer+Surface实现 播放网络视频: MyMediaPlayer.getInstance().play("http://download.cntv.cn/docuchina/PSA/2017/08/28/3b69f457848e0b497b12e356376515df_mpeg28000000PCM.mp4"); ...
详情见博客:https://blog.csdn.net/qq_20785431/article/details/100543504
Android 使用mediaplayer播放res/raw文件夹中的音乐的实例 (1)在res文件夹中新建一个文件夹重命名为raw,并且将要播放的音乐放到raw文件夹里面 (2)修改layout目录下的xml布局文件,添加3个按钮空间和一个文本...
mediaplayer-5.9-viral
DKPlayer A video player based on ...支持扩展自定义播放内核,MediaPlayer、ExoPlayer、vitamio等。 支持完全自定义控制层。 支持多路播放器同时播放,没有任何控制UI的纯播放 抖音demo。使用 1.添加类库 gradl
簡易Android MediaPlayer,使用android studio開啟,可快轉 倒轉 暫停 停止 撥放,支援音樂時間倒數。
从头学Android之多媒体--使用MediaPlayer播放音频示例代码
jw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rcjw-mediaplayer-5.2.rc