当前位置:首页 » 安卓系统 » android在线音乐播放

android在线音乐播放

发布时间: 2022-07-03 05:56:00

A. android 如何实现音乐播放

在Android平台下,要实现声音的播放是十分容易实现的,只要生成一个MediaPlayer对象,并调用它的相关方法,就能改变对声音播放进行控制。MediaPlayer对象有一下各种状态:

熟悉了MediaPlayer对象的各种状态后以及转换条件,就能很好的控制媒体播放。

例如:播放res/raw文件夹中的歌曲十分简单,只需写如下代码:

MediaPlayer mp = MediaPlayer.create(context, R.raw.sound_file_1);

mp.start();
也可以指定音乐文件的位置来进行播放,例如,在sdcard根目录下有有一首歌曲:test.mp3。则可以这样播放:
MediaPlayer mp = new MediaPlayer();
String song = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "test.mp3";
try {
mp.setDataSource(song);
mp.prepare();
mp.start();
} catch (Exception e) {
e.printStackTrace();
}

建议在播放音乐的时候把MediaPlayer放在Service中,因为如果放在Activity中会使得界面特别卡。而且音乐不能放到后台里播放,一旦退出Activity,音乐就会暂停播放。

可以在Activity中布局相关的界面,例如按钮等。然后通过这个Activitiy来启动这个Service。要通过UI与Service交互,可以通过Intent对象传递消息。更复杂一些,要实现Service向Activity发送消息,并利用这些消息来更新UI,这可以用广播机制,例如告诉Activity是否正在播放,播放进度,当前播放歌曲条目等信息。

例如以下实例代码:

/*Activity中*/

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btnPlay = (Button)findViewById(R.id.btnPlay);
btnPause = (Button)findViewById(R.id.btnPause);
btnPlay.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,SoundService.class);
intent.putExtra("playing", true);
startService(intent);
}
});

btnPause.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,SoundService.class);
intent.putExtra("playing", false);
startService(intent);
}
});
}
}

播放音乐的Service代码:

package com.yzy.sound;

import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.IBinder;

public class SoundService extends Service {
private MediaPlayer mp;

@Override
public void onCreate() {
super.onCreate();
mp = MediaPlayer.create(this, R.raw.test);
}

@Override
public void onDestroy() {
super.onDestroy();
mp.release();
stopSelf();
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
boolean playing = intent.getBooleanExtra("playing", false);
if (playing) {
mp.start();
} else {
mp.pause();
}
return super.onStartCommand(intent, flags, startId);
}

@Override
public IBinder onBind(Intent intent) {
return null;
}

}

B. android 在线播放音乐播放器怎么实现上一首下一首

我刚刚做完这个小项目,你是听tomcat服务器上的歌曲吗,我的思路可能有些笨,播放歌曲前先将歌曲从服务器端下载到sd卡上,而下一首就是从播放列表获取下一首的歌曲名称,然后通过解析tomcat服务器上的一个自定的xml文件来下载相应歌曲,再播放,可以告诉我你的邮箱,把我的代码发给你。

C. Android系统上有哪些优秀的本地音乐播放器

国产的:天天动听 美丽的界面 桌面动态歌词 可以设透明度 可以播放无损格式的音乐 可以调节音效的均衡 低音调节很方便 可以在线搜索下载音乐相关图片 歌词 当然还可以在线听音乐下载音乐 很不错的一款音乐播放软件 国外的: PowerAMP Music Player ,是android设备中一个音质非常优秀的音频播放器,PowerAMP堪称Android系统中用户体验最佳的音乐播放器,支持Android 2.0以上ROM,界面美观,音质出众。可调节EQ、单独的高低音调。支持MP3、WAV、WMA、音乐播放,APE、FLAC等无损音质,支持CUE列表,整体播放素质相当不错,。

D. Android中如何实现在线音乐播放

安装qq音乐,豆瓣电台之类的,或者打开网页直接用flash播放

E. 安卓手机求一款好的在线听歌软件

360软件管家中,有网友对音乐软件的打分排名:
1.多米音乐 9.1
2.BeoPlayer 8.9
3.AirPlay Close 8.9
4.高品质音乐播放器 8.9
5.Cool Edit 8.8
6.foobar2000 8.8
7.SRS Audio Sandbox音频增强 8.7
8.Winamp Full 8.4
9.酷我音乐盒 8.2
10.酷狗音乐 8.2
11.千千静听 8.2
12.搜狗音乐盒 7.9
13.QQ音乐播放器 7.6
但我个人认为数据并不能说明一切,我也用了很多音乐软件,但我个人认为酷狗音乐播放器更好些,我的同学基本上也都用它!

F. mediaplayer android 怎么播放网络音乐

首先打开我们下载安装好的Android Studio

然后我们写入布局代码,三个按钮用来播放,停止,暂停
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

<TextView android:text="音频播放器" android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView" />

<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@+id/textView"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="播放"
android:id="@+id/button"
android:layout_weight="0.33" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="停止"
android:id="@+id/button2"
android:layout_weight="0.33" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="暂停"
android:id="@+id/button3"
android:layout_weight="0.33" />
</LinearLayout>

</RelativeLayout>

然后在res目录下面添加raw文件夹下面添加my.mp3文件

然后我们在添加后台如下代码后台代码
package com.basillee.asus.demo;

import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import java.io.File;

public class MainActivity extends Activity {

private MediaPlayer mediaPlayer;//MediaPlayer对象
private boolean isPause=false;//是否暂停
private File file;//要播放的文件
private TextView hint;//声明提示信息的文本框

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取各功能按钮
final Button button=(Button)findViewById(R.id.button);//播放
final Button button1=(Button)findViewById(R.id.button2);//暂停
final Button button2=(Button)findViewById(R.id.button3);//停止

hint=(TextView)findViewById(R.id.textView);
if(!isFileExist()){
button.setEnabled(false);
}
//对MediaPlayer对象添加事件监听,当播放完成时重新开始音乐播放
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
play();
}
});

//对播放按钮进行事件监听
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
play();
if(isPause){
button1.setText("暂停");
isPause=false;
}
button1.setEnabled(true);
button2.setEnabled(true);
button.setEnabled(false);
}
});

//对暂停、继续按钮添加事件监听器
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(mediaPlayer.isPlaying()&&!isPause){
mediaPlayer.pause();
isPause=true;
((Button)v).setText("继续");
hint.setText("暂停播放音频....");
button.setEnabled(true);
}else{
mediaPlayer.start();
((Button)v).setText("暂停");
hint.setText("继续播放音频....");
button.setEnabled(false);
}
}
});

//对停止按钮添加事件监听器
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mediaPlayer.stop();
hint.setText("停止播放音频...");
button1.setEnabled(false);
button2.setEnabled(false);
button.setEnabled(true);
}
});
}

@Override
protected void onDestroy() {
if(mediaPlayer.isPlaying()){
mediaPlayer.stop();
}
mediaPlayer.release();
super.onDestroy();
}

//判断文件是否存在
private boolean isFileExist(){
file=new File(Environment.getExternalStorageDirectory()+File.separator+"myMP32.mp3");
if(file.exists()){
// mediaPlayer=new MediaPlayer();
mediaPlayer=MediaPlayer.create(this,R.raw.my);
try {

// mediaPlayer.setDataSource(file.getAbsolutePath());
// mediaPlayer.prepare();//预加载音频
// mediaPlayer.start();//播放音乐
}catch (Exception e) {
e.printStackTrace();
}
Toast.makeText(this,"file exist",Toast.LENGTH_LONG).show();
return true;
}else{
Toast.makeText(this,"file don't exist",Toast.LENGTH_LONG).show();
}
return false;
}

//播放音乐的方法
private void play(){
try{
mediaPlayer.reset();//从新设置要播放的音乐
// mediaPlayer.setDataSource(file.getAbsolutePath());
// mediaPlayer.prepare();//预加载音频
mediaPlayer=MediaPlayer.create(this,R.raw.my);
mediaPlayer.start();//播放音乐
hint.setText("Music is starting");
} catch (Exception e) {
e.printStackTrace();
Log.e("err",e.getMessage());
}
return ;
}
}
主要是play方法

然后我们运行虚拟机如下图所示:

6
然后我们运行此程序点击播放按钮就可以播放音乐了,其他按钮功能大家可以自己试试。

G. Android如何实现流媒体播放在线音乐

安卓暂时没有在线流媒体,不过像酷狗支持手机音乐电脑播放,在同样WIFI环境下没必要使用流媒体

H. 安卓音乐播放器怎么实现播放在线音乐

A歌曲列表里点击歌曲在B里面创建一个线程,然后点击点击其他的歌曲或者相同的歌曲后,先把那个线程结束掉,再创建一个线程播放这首,用个变量记录之前的前一首播放的歌曲记录,如果是同一首就继续播放之前的那首,播放到哪个时间段就从那个时间段继续,反之则清空,记录这首的播放。这样就不就行了

I. android在线本地音乐播放器 简单点能看懂的 谁有源码给一个啊

下面这个例子是使用service和broadcastReceiver实现的简单音乐播放器,麻雀虽小,五脏俱全,网络搜索安卓无忧,点击源码看源码,你看演示:

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;
}
}
}
}


最后,您觉得回答满意的话,请关注一下我的微博,我的名字除了中文以外的。

J. 开发android在线音乐播放没有接口怎么办

在线音乐 , 接口

post_newreply

//$(\'note_\').focus();
function succeedhandle_vfastpost(url, message, param) {
$(\'vmessage\').value = \'\';
succeedhandle_fastpost(url, message, param);
showCreditPrompt();
}
var vf_tips = \'#在这里快速回复#\';
$(\'vmessage\').value = vf_tips;
$(\'vmessage\').style.color = \'#CDCDCD\';
$(\'vmessage\').onclick = function() {
if($(\'vmessage\').value==vf_tips) {
$(\'vmessage\').value=\'\';
$(\'vmessage\').style.color=\"#000\";
}
}
$(\'vmessage\').onblur = function() {
if(!$(\'vmessage\').value) {
$(\'vmessage\').value=vf_tips;
$(\'vmessage\').style.color=\"#CDCDCD\";
}
}
$(\'vreplysubmit\').onclick = function() {
if($(\'vmessage\').value == vf_tips) {
return false;
}
}

热点内容
scratch少儿编程课程 发布:2025-04-16 17:11:44 浏览:637
荣耀x10从哪里设置密码 发布:2025-04-16 17:11:43 浏览:366
java从入门到精通视频 发布:2025-04-16 17:11:43 浏览:82
php微信接口教程 发布:2025-04-16 17:07:30 浏览:307
android实现阴影 发布:2025-04-16 16:50:08 浏览:789
粉笔直播课缓存 发布:2025-04-16 16:31:21 浏览:339
机顶盒都有什么配置 发布:2025-04-16 16:24:37 浏览:210
编写手游反编译都需要学习什么 发布:2025-04-16 16:19:36 浏览:810
proteus编译文件位置 发布:2025-04-16 16:18:44 浏览:364
土压缩的本质 发布:2025-04-16 16:13:21 浏览:590