Ⅰ 基於安卓的手機音樂播放器
來比較大海洶涌的表面。
而我們吸入從船板
滲透出來的樹脂的香味
贊嘆整齊地鉚進哈哈艙壁的木板,
不是由伯利恆那個平靜的木匠而是由另一個,
那個航海之父和航海員之友鉚進
它們也曾經聳立在乾爽的陸地,
Ⅱ Android音樂播放器(同步顯示歌詞)源代碼的密碼是多少
去論壇看看,裡面有的
Ⅲ Android音樂播放器的源碼 做畢業設計用 所以要自己寫的比較好 功能要實用 發我郵箱[email protected]
答案:我在屋內,他在屋外。
Ⅳ 安卓開源在線音樂播放器
在線聽音樂上網,qq,反正只要和上網有關,必然會產生緩存,佔用手機內存,這是不可能避免的。(如果可以人家早就開發了)網頁播放器產生的所謂在線緩存跟這個實質上是一樣的,其實根本不用太擔心,你只要調整相應程序緩存文件的大小就OK了
Ⅳ 如何用android來做一個音樂電台,源碼 代碼
就是的啊 安卓的音樂電台做出來 也不會給你的啊 ,都出來了 那就是完整的軟體了
Ⅵ android在線本地音樂播放器 簡單點能看懂的 誰有源碼給一個啊
下面這個例子是使用service和broadcastReceiver實現的簡單音樂播放器,麻雀雖小,五臟俱全,網路搜索安卓無憂,點擊源碼看源碼,你看演示:
java">packagemm.shandong.com.testsimplemedia;
importandroid.content.BroadcastReceiver;
importandroid.content.Context;
importandroid.content.Intent;
importandroid.content.IntentFilter;
importandroid.support.v7.app.AppCompatActivity;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.widget.ImageButton;
importandroid.widget.TextView;
importmm.shandong.com.testsimplemedia.service.MusicService;
{
ImageButtonimageButton;
TextViewtextViewMp3Name;
TextViewtextViewMp3Author;
intstatus=0;
String[]authors=newString[]{"張三","李四","王二"};
String[]names=newString[]{"first","second","thrid"};
intcurrentMusic=0;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_test_simple_media);
imageButton=(ImageButton)findViewById(R.id.imageButton);
textViewMp3Name=(TextView)findViewById(R.id.textViewMp3Name);
textViewMp3Author=(TextView)findViewById(R.id.textViewMp3Author);
imageButton.setOnClickListener(newView.OnClickListener(){
@Override
publicvoidonClick(Viewview){
Intentintent=newIntent("Get_Music_Control");
if(status==2){
intent.putExtra("control",0);
}else{
intent.putExtra("control",1);
}
sendBroadcast(intent);
}
});
IntentFilterintentFilter=newIntentFilter();
intentFilter.addAction("Update_Music_State");
=newMusicStatusReceiver();
//動態注冊activity變化的廣播接收者
registerReceiver(musicStatusReceiver,intentFilter);
Intentintent=newIntent(this,MusicService.class);
startService(intent);
IntentintentMusicReceiver=newIntent("Get_Music_Control");
intentMusicReceiver.putExtra("control",3);
sendBroadcast(intentMusicReceiver);
}
///上一首
publicvoidpreMusic(Viewview){
IntentintentMusicReceiver=newIntent("Get_Music_Control");
intentMusicReceiver.putExtra("control",4);
sendBroadcast(intentMusicReceiver);
}
///下一首
publicvoidnextMusic(Viewview){
IntentintentMusicReceiver=newIntent("Get_Music_Control");
intentMusicReceiver.putExtra("control",5);
sendBroadcast(intentMusicReceiver);
}
///定義操作音樂的廣播接收者
{
@Override
publicvoidonReceive(Contextcontext,Intentintent){
status=intent.getIntExtra("status",0);
currentMusic=intent.getIntExtra("currentMusic",0);
switch(status){
case0:
textViewMp3Name.setText(names[currentMusic]);
textViewMp3Author.setText(authors[currentMusic]);
imageButton.setBackgroundResource(R.drawable.play32);
break;
case1:
textViewMp3Name.setText(names[currentMusic]);
textViewMp3Author.setText(authors[currentMusic]);
imageButton.setBackgroundResource(R.drawable.play32);
break;
case2:
imageButton.setBackgroundResource(R.drawable.pause32);
textViewMp3Name.setText(names[currentMusic]);
textViewMp3Author.setText(authors[currentMusic]);
break;
}
}
}
}
最後,您覺得回答滿意的話,請關注一下我的微博,我的名字除了中文以外的。
Ⅶ 基於Android音樂播放器源代碼(正常播放、有列表)
package my.android.players;
import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageButton;
import android.widget.TextView;
public class mainActivity extends Activity {
private List<String> myMusicList=new ArrayList<String>();
//當前播放歌曲的索引
private int currentListItem=0;
//音樂的路徑
private static final String MUSIC_PATH="/sdcard/mp3";
//播放對象
private MediaPlayer myMediaPlayer;
private TextView m_TextView;
//播放按鈕
private ImageButton m_start;
private ImageButton m_stop;
private ImageButton m_next;
private ImageButton m_last;
/*設定bIsPaused一開始為false */
private boolean bIsRun = false;
private boolean isplay;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
myMediaPlayer=new MediaPlayer();
musicList();
m_TextView=(TextView)findViewById(R.id.mtextview);
m_start=(ImageButton)findViewById(R.id.imgbtn_start);
m_stop=(ImageButton)findViewById(R.id.imgbtn_stop);
m_next=(ImageButton)findViewById(R.id.imgbtn_next);
m_last=(ImageButton)findViewById(R.id.imgbtn_last);
listener();
Intent intent = this.getIntent();
Bundle bundle = intent.getExtras();
currentListItem = bundle.getInt("currentListItem");
isplay=bundle.getBoolean("isplay");
if(isplay==true)
{
bIsRun=false;
playMusic(MUSIC_PATH+"/"+myMusicList.get(currentListItem));
}
}
//監聽事件
void listener(){
//開始
m_start.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
try
{
if(myMediaPlayer.isPlaying()==true)
{
myMediaPlayer.pause();
m_start.setImageResource(R.drawable.pause);
}
else
{
playMusic(MUSIC_PATH+"/"+myMusicList.get(currentListItem));
}
}
catch (IllegalStateException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
//下一首
m_next.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
nextMusic();
}
});
//上一首
m_last.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
lastMusic();
}
});
//停止
m_stop.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
stopMusic();
}
});
myMediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
// TODO Auto-generated method stub
nextMusic();
}
});
}
//播放音樂
void playMusic(String path){
try {
if(bIsRun==false)
{
myMediaPlayer.reset();
myMediaPlayer.setDataSource(path);
myMediaPlayer.prepare();
myMediaPlayer.start();
/*
* 取出歌曲名的.mp3後綴
* */
String str=(myMusicList.get(currentListItem)).toString();
System.out.println(str);
String str1[]=str.split("\\.");
System.out.println(str1[0]);
m_TextView.setText(str1[0]);
}
else
{
myMediaPlayer.start();
}
m_start.setImageResource(R.drawable.start);
bIsRun=true;
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
//下一首
void nextMusic(){
if(++currentListItem>=myMusicList.size()){
currentListItem=0;
}
bIsRun=false;
playMusic(MUSIC_PATH+"/"+myMusicList.get(currentListItem));
}
//上一首
void lastMusic(){
if(--currentListItem<0)
currentListItem=myMusicList.size()-1;
bIsRun=false;
playMusic(MUSIC_PATH+"/"+myMusicList.get(currentListItem));
}
//停止
void stopMusic() {
if (myMediaPlayer.isPlaying()) {
m_start.setImageResource(R.drawable.pause);
myMediaPlayer.stop();// 停止
bIsRun=false;
}
else
playMusic(MUSIC_PATH+"/"+myMusicList.get(currentListItem));
}
//當用戶返回時結束音樂並釋放音樂對象
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if(keyCode==KeyEvent.KEYCODE_BACK){
new AlertDialog.Builder(mainActivity.this).setTitle("message")
.setIcon(android.R.drawable.dialog_frame)
.setMessage("你確定要離開嗎?")
.setPositiveButton("確定",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
myMediaPlayer.stop();
myMediaPlayer.release();
finish();
}
}).setNegativeButton("取消",new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
}).show();
}
return super.onKeyDown(keyCode, event);
}
/**
* 文件過濾器
*
* @author
*
*/
class MusicFilter implements FilenameFilter {
@Override
public boolean accept(File dir, String filename) {
return (filename.endsWith(".mp3"));
}
}
//綁定音樂
void musicList(){
try{
File home=new File(MUSIC_PATH);
if(!home.exists())
home.mkdirs();
if(home.listFiles(new MusicFilter()).length>=0){
for(File file:home.listFiles(new MusicFilter())){
myMusicList.add(file.getName().toString());
}
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
package my.android.players;
import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class Activity01 extends Activity {
//播放列表
private List<String> myMusicList=new ArrayList<String>();
//當前播放歌曲的索引
private int currentListItem;
//音樂的路徑
private static final String MUSIC_PATH="/sdcard/mp3";
//播放列表
private ListView m_ListView;
private boolean isplay=true;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
m_ListView=(ListView)findViewById(R.id.lv_music);
musicList();
//當選擇列表項時播放音樂
m_ListView.setOnItemClickListener(new ListView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
currentListItem = arg2;
Intent intent = new Intent();
Bundle mBundle=new Bundle();
mBundle.putInt("currentListItem", currentListItem);
mBundle.putBoolean("isplay", isplay);
intent.putExtras(mBundle);
intent.setClass(Activity01.this,mainActivity.class);
startActivity(intent);
finish();
}
});
}
/**
* 文件過濾器
*
* @author
*
*/
class MusicFilter implements FilenameFilter {
@Override
public boolean accept(File dir, String filename) {
return (filename.endsWith(".mp3"));
}
}
//綁定音樂
void musicList(){
try{
File home=new File(MUSIC_PATH);
if(!home.exists())
home.mkdirs();
if(home.listFiles(new MusicFilter()).length>=0){
for(File file:home.listFiles(new MusicFilter())){
myMusicList.add(file.getName().toString());
}
ArrayAdapter<String> musicList=new ArrayAdapter<String>
(Activity01.this,android.R.layout.simple_list_item_1, myMusicList);
m_ListView.setAdapter(musicList);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
Ⅷ 安卓編程添加背景音樂代碼和方法
MediaPlayer
網上有人封裝了一個直接拿來用就可以了
packagecom.llkan.setup;
importjava.util.HashMap;
importjava.util.Map;
importjava.util.Random;
importcom.llkan.R;
importandroid.content.Context;
importandroid.media.AudioManager;
importandroid.media.MediaPlayer;
importandroid.media.SoundPool;
/**
*聲音控制類
*@authorwyf
*
*/
publicclassSoundPlayer{
privatestaticMediaPlayermusic;
;
privatestaticbooleanmusicSt=true;//音樂開關
privatestaticbooleansoundSt=true;//音效開關
privatestaticContextcontext;
privatestaticfinalint[]musicId={R.raw.bg,R.raw.bg1,R.raw.bg2,R.raw.bg3};
privatestaticMap<Integer,Integer>soundMap;//音效資源id與載入過後的音源id的映射關系表
/**
*初始化方法
*@paramc
*/
publicstaticvoidinit(Contextc)
{
context=c;
initMusic();
initSound();
}
//初始化音效播放器
privatestaticvoidinitSound()
{
soundPool=newSoundPool(10,AudioManager.STREAM_MUSIC,100);
soundMap=newHashMap<Integer,Integer>();
soundMap.put(R.raw.itemboom,soundPool.load(context,R.raw.itemboom,1));
soundMap.put(R.raw.sel,soundPool.load(context,R.raw.sel,1));
}
//初始化音樂播放器
privatestaticvoidinitMusic()
{
intr=newRandom().nextInt(musicId.length);
music=MediaPlayer.create(context,musicId[r]);
music.setLooping(true);
}
/**
*播放音效
*@paramresId音效資源id
*/
publicstaticvoidplaySound(intresId)
{
if(soundSt==false)
return;
IntegersoundId=soundMap.get(resId);
if(soundId!=null)
soundPool.play(soundId,1,1,1,0,1);
}
/**
*暫停音樂
*/
publicstaticvoidpauseMusic()
{
if(music.isPlaying())
music.pause();
}
/**
*播放音樂
*/
publicstaticvoidstartMusic()
{
if(musicSt)
music.start();
}
/**
*切換一首音樂並播放
*/
()
{
if(music!=null)
music.release();
initMusic();
startMusic();
}
/**
*獲得音樂開關狀態
*@return
*/
publicstaticbooleanisMusicSt(){
returnmusicSt;
}
/**
*設置音樂開關
*@parammusicSt
*/
publicstaticvoidsetMusicSt(booleanmusicSt){
SoundPlayer.musicSt=musicSt;
if(musicSt)
music.start();
else
music.stop();
}
/**
*獲得音效開關狀態
*@return
*/
publicstaticbooleanisSoundSt(){
returnsoundSt;
}
/**
*設置音效開關
*@paramsoundSt
*/
publicstaticvoidsetSoundSt(booleansoundSt){
SoundPlayer.soundSt=soundSt;
}
/**
*發出『邦』的聲音
*/
publicstaticvoidboom()
{
playSound(R.raw.itemboom);
}
}
還有 小編賣萌了