亚洲欧美国产日韩综合一卡_人成在线精品日韩_国产成人av在线播放不卡_小仙女导航精品导航_日本最新色网网址_中文無碼久久亞洲_蜜臀av午夜在线_精品三級內地國產在線觀看_狼人色精品视频给你_日朝在线黄色视频

音樂(lè)播放器微信小程序開(kāi)發(fā)源碼(基于微信小程序的音樂(lè)播放器設(shè)計(jì)和畢業(yè)論文)

小程序開(kāi)發(fā) 3631
今天給各位分享音樂(lè)播放器微信小程序開(kāi)發(fā)源碼的知識(shí),其中也會(huì)對(duì)基于微信小程序的音樂(lè)播放器設(shè)計(jì)和畢業(yè)論文進(jìn)行解釋?zhuān)绻芘銮山鉀Q你現(xiàn)在面臨的問(wèn)題,別忘了關(guān)注本站,現(xiàn)在開(kāi)始吧!本文目錄一覽: 1、基于Android音樂(lè)播放器源代碼(正常播放、有列表)

今天給各位分享音樂(lè)播放器微信小程序開(kāi)發(fā)源碼的知識(shí),其中也會(huì)對(duì)基于微信小程序的音樂(lè)播放器設(shè)計(jì)和畢業(yè)論文進(jìn)行解釋?zhuān)绻芘銮山鉀Q你現(xiàn)在面臨的問(wèn)題,別忘了關(guān)注本站,現(xiàn)在開(kāi)始吧!

本文目錄一覽:

基于Android音樂(lè)播放器源代碼(正常播放、有列表)

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 ListString myMusicList=new ArrayListString();

//當(dāng)前播放歌曲的索引

private int currentListItem=0;

//音樂(lè)的路徑

private static final String MUSIC_PATH="/sdcard/mp3";

//播放對(duì)象

private MediaPlayer myMediaPlayer;

private TextView m_TextView;

//播放按鈕

private ImageButton m_start;

private ImageButton m_stop;

private ImageButton m_next;

private ImageButton m_last;

/*設(shè)定bIsPaused一開(kāi)始為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));

}

}

//監(jiān)聽(tīng)事件

void listener(){

//開(kāi)始

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();

}

});

}

//播放音樂(lè)

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(--currentListItem0)

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

}

//當(dāng)用戶(hù)返回時(shí)結(jié)束音樂(lè)并釋放音樂(lè)對(duì)象

@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("你確定要離開(kāi)嗎?")

.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);

}

/**

* 文件過(guò)濾器

*

* @author

*

*/

class MusicFilter implements FilenameFilter {

@Override

public boolean accept(File dir, String filename) {

return (filename.endsWith(".mp3"));

}

}

//綁定音樂(lè)

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 ListString myMusicList=new ArrayListString();

//當(dāng)前播放歌曲的索引

private int currentListItem;

//音樂(lè)的路徑

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();

//當(dāng)選擇列表項(xiàng)時(shí)播放音樂(lè)

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();

}

});

}

/**

* 文件過(guò)濾器

*

* @author

*

*/

class MusicFilter implements FilenameFilter {

@Override

public boolean accept(File dir, String filename) {

return (filename.endsWith(".mp3"));

}

}

//綁定音樂(lè)

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());

}

ArrayAdapterString musicList=new ArrayAdapterString

(Activity01.this,android.R.layout.simple_list_item_1, myMusicList);

m_ListView.setAdapter(musicList);

}

}

catch(Exception ex)

{

ex.printStackTrace();

}

}

}

Github上收集了70個(gè)微信小程序源碼

1:仿豆瓣電影微信小程序

2:微信小程序移動(dòng)端商城

3:Gank微信小程序

4:微信小程序高仿QQ應(yīng)用

5:微信中的知乎

6:實(shí)現(xiàn)一個(gè)移動(dòng)端小商城

7:微信小程序demo

8: 跑步微信小程序Demo

9:簡(jiǎn)單的v2ex微信小程序

10:騰訊云微信小程序

11:微信小程序-微票

12:微信小程序demo 仿手機(jī)淘寶

13:一個(gè)為微信小程序開(kāi)發(fā)準(zhǔn)備的基礎(chǔ)骨架

14:巴爺微信商城的簡(jiǎn)單版本

15:微信小程序 - 電影推薦

16:微信小程序-知乎日?qǐng)?bào)

17:微信小程序: 音樂(lè)播放器

18:使用微信小程序?qū)崿F(xiàn)分答這款A(yù)PP的基礎(chǔ)功能

19:微信小程序開(kāi)發(fā)demo-地圖定位

:20:微信小程序 - 豆瓣電影

21:wepy仿微信聊天界面

22:仿 「ONE · 一個(gè)」 的微信小程序

23:微信小程序集成Redux實(shí)現(xiàn)的Todo list

24: 基于Zhihu Live數(shù)據(jù)的微信小程序

25:微信小程序之小熊の日記

26:仿網(wǎng)易云音樂(lè)APP的微信小程序

27:微信小程序的Flex布局demo

28:番茄時(shí)鐘微信小程序版

29:Wafer 服務(wù)端 Demo

30:微信小程序版聊天室

31:微信小程序版簡(jiǎn)易計(jì)算器,適合入門(mén)練手

32:微信小程序示例一筆到底

33:基于面包旅行 API 制作的微信小程序示例

34:新聞閱讀器

35:一個(gè)簡(jiǎn)單的微信小程序購(gòu)物車(chē)DEMO

36:微信小程序-公眾號(hào)熱門(mén)文章信息流

37:通過(guò)Node.js實(shí)現(xiàn)的妹子照片爬蟲(chóng)微信小程序

38:從FlexLayout布局開(kāi)始學(xué)習(xí)微信小程序

39:HiApp 微信小程序版

40:微信小程序的簡(jiǎn)單嘗試

41:集美大學(xué)圖書(shū)館的便捷工具

42:微信小程序版妹紙圖

43:V2ex 微信小程序版

44:微信小程序仿百思不得姐

45:微信小程序音樂(lè)播放器應(yīng)用

46:醫(yī)藥網(wǎng)原生APP的微信小程序DEMO

47:微信小程序跟讀

48:微信小程序瀑布流布局模式

49:微信小程序HotApp云筆記

50:小程序模仿——網(wǎng)易云音樂(lè)

51:微信小程序商城demo

52:微信小程序版的掃雷

53:專(zhuān)注管理時(shí)間的微信小程序

54:微信小程序版干貨集中營(yíng)

55:英雄聯(lián)盟(LOL)戰(zhàn)績(jī)查詢(xún)

56:微信小程序首字母排序選擇表

57:微信小程序版豆瓣電影

58:簡(jiǎn)單的實(shí)現(xiàn)了1024的游戲規(guī)則

59:微信小程序試玩

60:微信小程序逗樂(lè)

61:一步步開(kāi)發(fā)微信小程序

62:一個(gè) meteor 的 React todo list 例子

63:微信小程序健康菜譜

64: jspapa微信小程序版本

65:微信小程序版的CNodeJs中文社區(qū)

66:LeanCloud 的微信小程序用戶(hù)登陸Demo

67: 微笑話(huà)微信小程序

68:微信小程序開(kāi)發(fā)的App

69:體育新聞微信小程序

70:基于Labrador和mobx構(gòu)建的小程序開(kāi)發(fā)demo

微信小程序音頻播放之音樂(lè)播放器

使用微信小程序?qū)崿F(xiàn)一個(gè)簡(jiǎn)易的音樂(lè)播放器.

Github地址

雖然界面很簡(jiǎn)單,但是一個(gè)音頻播放器該有的功能大部分都有了(沒(méi)有歌詞顯示功能).

主要實(shí)現(xiàn)的功能有:

1.實(shí)現(xiàn)音頻播放,暫停;

2.實(shí)現(xiàn)拖拽進(jìn)度條,快進(jìn)音頻進(jìn)度;

3.實(shí)現(xiàn)上一首,下一首,列表循環(huán)播放;

4.實(shí)現(xiàn)關(guān)閉小程序,也可在后臺(tái)播放,正式版需要通過(guò)審核,開(kāi)發(fā)版本可正常測(cè)試;

一丶index.js

二丶index.wxml

三丶index.wxss

四丶要實(shí)現(xiàn)關(guān)閉小程序后,依然后臺(tái)播放,微信頂部懸浮展示,需要再app.json配置requiredBackgroundModes屬性

附上官方相關(guān)api鏈接:

BackgroundAudioManager.html

wx.getBackgroundAudioManager()

slider組件

關(guān)于音樂(lè)播放器微信小程序開(kāi)發(fā)源碼和基于微信小程序的音樂(lè)播放器設(shè)計(jì)和畢業(yè)論文的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

掃碼二維碼