package com.Aina.Android;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.TreeMap;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.AlertDialog.Builder;
import android.content.ActivityNotFoundException;
import android.content.ComponentName;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.DialogInterface.OnClickListener;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnErrorListener;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.ScrollView;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.Toast;
public class ActivityMain extends Activity{
/** Called when the activity is first created. */
private ViewlrcKLOK viewlrcKLOK;
private MediaPlayer mMediaPlayer = null;
private SeekBar mSeekBar = null;
private ListView mListView = null;
private ImageButton mLastbtn = null;
private ImageButton mStartbtn = null;
private ImageButton mPausebtn = null;
private ImageButton mStopbtn = null;
private ImageButton mNextbtn = null;
private TextView mTextView = null;
private ScrollView scrollview =null;
private ImageView header =null;
private TextView lrc = null;
private List<String> mMusiclist = null;
private int mCurrent = 0;
private int count = 0;
private boolean isrun = false;
private boolean isauto = false;
private static final String PATH = "/sdcard/mp3/";
private static TreeMap<Integer, lrcObject> lrc_map;
private static int lrc_timeend =0;
private long KeyDownOldTime =0;
private int KeyDownCount =0;
private String songName ="";
private String songAuthor ="";
private NotificationManager mNotificationManager;
private static int NOTIFICATIONS_ID = R.layout.main;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mListView = (ListView) this.findViewById(R.id.lv_music);
mSeekBar = (SeekBar) this.findViewById(R.id.SeekBar01);
mTextView = (TextView) this.findViewById(R.id.mTextView);
viewlrcKLOK = (ViewlrcKLOK) this.findViewById(R.id.lrc_view);
lrc = (TextView) this.findViewById(R.id.lrc);
scrollview = (ScrollView) this.findViewById(R.id.scrollview);
mLastbtn = (ImageButton) this.findViewById(R.id.imgbtn_last);
mStartbtn = (ImageButton) this.findViewById(R.id.imgbtn_start);
mPausebtn = (ImageButton) this.findViewById(R.id.imgbtn_pause);
mStopbtn = (ImageButton) this.findViewById(R.id.imgbtn_stop);
mNextbtn = (ImageButton) this.findViewById(R.id.imgbtn_next);
header = (ImageView) this.findViewById(R.id.header);
mMusiclist = new ArrayList<String>();
mMediaPlayer = new MediaPlayer();
lrc_map = new TreeMap<Integer, lrcObject>();
viewlrcKLOK.SetlrcContent("歌词",0,0,"......",0);
lrc_timeend = 0;
lrc.setVisibility(View.GONE);
mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
mMediaPlayer.setOnPreparedListener(prepareListener);
mMediaPlayer.setOnCompletionListener(CompletionListener);
mMediaPlayer.setOnErrorListener(ErrorListener);
// 开始按钮
mStartbtn.setOnClickListener(new ImageButton.OnClickListener() {
@Override
public void onClick(View v) {
//lrc.setVisibility(View.GONE); //控件隐藏
PlayMusic(PATH + mMusiclist.get(mCurrent));
}
});
// 下一首
mNextbtn.setOnClickListener(new ImageButton.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
NextMusic();
}
});
// 上一首
mLastbtn.setOnClickListener(new ImageButton.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
LastMusic();
}
});
// 暂停
mPausebtn.setOnClickListener(new ImageButton.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
isrun = true;
isauto = false;
mPausebtn.setVisibility(View.GONE);// 隐藏暂停按钮
mStartbtn.setVisibility(View.VISIBLE);// 显示启动按钮
// 是否正在播放
if (mMediaPlayer.isPlaying()) {
viewlrcKLOK.Stop();
mMediaPlayer.pause();
}
}
});
// 停止
mStopbtn.setOnClickListener(new ImageButton.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
StopMusic();
}
});
mListView.setOnItemClickListener(new ListView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
mCurrent = arg2;
StopMusic();
PlayMusic(PATH + mMusiclist.get(mCurrent));
}
});
mSeekBar
.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar,
int progress, boolean fromUser) {
if (!isauto) {
mMediaPlayer.seekTo(progress);
}
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
isauto = false;
}
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
isauto = true;
}
});
this.MusicList();
}
private void setPlayint(String tickerText, String title, String content,
int drawable) {
Notification notification = new Notification(drawable, tickerText,
System.currentTimeMillis());
PendingIntent contentIntent = PendingIntent.getActivity(this, 0,
new Intent(this, ActivityMain.class), 0);
notification.setLatestEventInfo(this, title, content, contentIntent);
mNotificationManager.notify(NOTIFICATIONS_ID, notification);
}
private MediaPlayer.OnPreparedListener prepareListener = new MediaPlayer.OnPreparedListener(){
public void onPrepared(MediaPlayer mp){
isrun = true;
setPlayint(songAuthor,songName, songAuthor, R.drawable.icon);
lrc_timeend = 0;
viewlrcKLOK.SetlrcContent("准备好",0,0,"go,go,go..",0);
viewlrcKLOK.Star();
count = mMediaPlayer.getDuration();
Log.i("TAG-count", count + "");
mSeekBar.setMax(count);// 设置最大值.
mTextView.setText("当前播放歌曲:" + mMusiclist.get(mCurrent));
mp.start(); //开始播放
//Toast.makeText(ActivityMain.this, "开始播放",Toast.LENGTH_SHORT).show();
myHandler.sendEmptyMessage(PROGRESS_CHANGED);
}
};
//视频播放完成
private MediaPlayer.OnCompletionListener CompletionListener=new MediaPlayer.OnCompletionListener(){
@Override
public void onCompletion(MediaPlayer arg0) {
mMediaPlayer.stop();
isauto = true;
mSeekBar.setProgress(0);
viewlrcKLOK.SetlrcContent("准备好",0,0,"... ...",0);
viewlrcKLOK.Stop();
//Toast.makeText(ActivityMain.this, "播放完成:",Toast.LENGTH_SHORT).show();
NextMusic();
}
};
//播放时发现错误
private MediaPlayer.OnErrorListener ErrorListener=new MediaPlayer.OnErrorListener(){
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
// TODO Auto-generated method stub
mMediaPlayer.stop();
Toast.makeText(
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Music_Player.rar (50个子文件)
Music_Player
.project 848B
default.properties 449B
bin
com
android
music_player
Aina
Android
R$string.class 421B
ActivityMain$12.class 1KB
ActivityMain$6.class 792B
R$layout.class 388B
ActivityMain$8.class 1KB
ActivityMain$11.class 1KB
ActivityMain$9.class 792B
R$drawable.class 710B
ActivityMain$1.class 3KB
ActivityMain$13.class 870B
ActivityMain$2.class 1KB
R.class 517B
ActivityMain$14.class 846B
ActivityMain$10.class 2KB
ViewlrcKLOK.class 5KB
ActivityMain$3.class 1KB
ActivityMain.class 17KB
R$attr.class 334B
ActivityMain$7.class 792B
ActivityMain$5.class 1KB
ActivityMain$MusicFilter.class 794B
ActivityMain$4.class 3KB
R$id.class 807B
lrcObject.class 382B
Music_Player.apk 896KB
resources.ap_ 882KB
classes.dex 25KB
AndroidManifest.xml 826B
src
com
Aina
Android
ViewlrcKLOK.java 6KB
lrcObject.java 158B
ActivityMain.java 18KB
res
values
strings.xml 175B
layout
main.xml 3KB
drawable
start.png 5KB
back7.png 353B
back6.png 2KB
back4.jpg 267KB
pause.png 6KB
last.png 6KB
next.png 6KB
Thumbs.db 35KB
stop.png 5KB
back3.jpg 292KB
back2.jpg 145KB
back1.jpg 150KB
icon.png 5KB
.classpath 280B
gen
com
android
music_player
Aina
Android
R.java 2KB
assets
共 50 条
- 1
资源评论
- zxc199011072013-10-17我怎么不可以用
- 风口猪炒股指标2013-02-28功能基本能用,不过还有些小问题
mainIdear
- 粉丝: 16
- 资源: 16
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功