`
gryphone
  • 浏览: 433696 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

音乐播放器widget 补充

阅读更多

音乐播放器widget 补充

 

[功能]

在 音乐播放器widget 前传 后传 有一些没讲清楚 所以打算再开辟 专门说一下

 

 

1. Bundle 复用

 

2. BroadcastReceiver 复用

 

 

[前提]

1. 现有一BroadcastReceiver:class MessageListenerHelper extends BroadcastReceiver 实现如下:

public class MessageListenerHelper extends BroadcastReceiver {
		Context context;
		
		MessageListenerHelper listener;
		//construct 
		public MessageListenerHelper(Context c){
			context = c;
			
			//to instance it
			listener = this;
		}
		
		public void registerAction(String action){
			IntentFilter filter = new IntentFilter();
			filter.addAction(action);
			
			context.registerReceiver(listener,filter);
		}
		
		@Override
		public void onReceive(Context arg0, Intent arg1) {
			// TODO Auto-generated method stub

		}
		
	}

 

写道
补充:

其 onReceive() 没有实现 将在具体情况中分别实现之

 

 

 

以下就2点予以说明:

 

 

 

[Bundle 复用]

1. 注册MessageListenerHelper

MessageListenerHelper listener = new MessageListenerHelper(this);


listener.registerAction("Broadcast_MessageListwener");

 

 

2. 发生某Broadcast

public void sendMessageText(String s){
    	Intent i = new Intent(BroadcastColumn.BROADCAST_TaskB);
    	
    	Bundle b = new Bundle();
    	b.putString("Message_Text", s);
    	
    	i.putExtras(b);
    	sendBroadcast(i);
    }

 

 

3. 实现onReceive() 并对具体消息做判断

public void onReceive(Context arg0, Intent arg1) {
			// TODO Auto-generated method stub
			
			
Bundle b = arg1.getExtras();
			
if(b.containsKey("Message_Text")){
				String string = b.getString("Message_Text");
				Log.d("TAG",string);
			}

		}

 

 

 

4. 如此就实现了Bundle 复用

 

 

 

 

[Broadcast 复用]

1. 注册MessageListenerHelper

MessageListenerHelper listener = new MessageListenerHelper(this);

listener.registerAction("Broadcast_MessageListener_1");
		

MessageListenerHelper listener2 = new MessageListenerHelper(this);

listener2.registerAction(Broadcast_MessageListener_2);
		

 

 

2.  发生某Broadca

public void sendMessage1(String b,String key, String value){
    	Intent i = new Intent(b);
    	
    	Bundle b = new Bundle();
    	b.putString(key, value);
    	
    	i.putExtras(b);
    	sendBroadcast(i);
    }

 

 

3. 实现onReceive() 并对具体Broadcast 做判断

public void onReceive(Context arg0, Intent arg1) {
			// TODO Auto-generated method stub
			
if(arg1.getAction().endsWith("Broadcast_MessageListener_1")){


Bundle b = arg1.getExtras();
				
if(b.containsKey("Message_Text_1")){

String string = b.getString("Message_Text_1");


Log.d("TAG",string);
				}
}
else if(arg1.getAction().endsWith("Broadcast_MessageListener_2")){


Bundle b = arg1.getExtras();
				
if(b.containsKey("Message_Text_2")){


String string = b.getString("Message_Text_2");


Log.d("TAG",string);
				}
			}
			
		}

 

 

 

4. 此为Broadcast 复用

 

 

补充:

1. 其实除了在widget中 必须用 Broadcast复用外 二者都可以使用 具体用那个 视情况而定

2. 因为Broadcast复用中 需要new 2 次 所以推荐 尽量用 Bundle 复用 仅限个人意见

 

 

分享到:
评论

相关推荐

    安卓优雅音乐播放器widget

    安卓优雅音乐播放器,带widget

    仿小米音乐播放器带widget

    优雅音乐播放器是一款精心设计的音乐应用,其特色在于它带有Widget功能,模仿了MIUI系统中的音乐播放器界面,提供了美观且用户友好的体验。Widget在安卓系统中是一种小型的应用程序视图,可以直接在主屏幕上显示,让...

    Android音乐播放器项目(含Widget小挂件、Notification通知栏)

    Android音乐播放器项目(含Widget小挂件、Notification通知栏)代码详解博客:https://blog.csdn.net/jal517486222/article/details/88994863

    andriod的一个桌面Widget 一个MP3播放器

    可以通过桌面Widget控制后台音乐的播放,也可以点击Widget上面的LOGO进入应用程序。 涉及到了,一个基本的widget程序的大部分知识点,包括widget和service如何交换数据,service如何利用RemoteView来控制widget上的...

    《桌面widget详解(四)——桌面音乐播放器(实战)》源码

    在Android平台上,开发一款桌面音乐播放器Widget是一个有趣且实用的实践项目。本文将深入解析如何利用Android的App Widget API创建一个能够在用户桌面运行并控制音乐播放的应用组件。通过源码分析,我们可以学习到...

    WordPress漂亮的音乐播放器插件Aplayer

    在WordPress的众多插件中,Aplayer是一款设计精美的音乐播放器插件,深受许多网站管理员的喜爱。它为用户提供了丰富的自定义选项和流畅的听觉体验,使得音乐与网站内容完美融合。本文将深入探讨Aplayer插件的特性、...

    基于eclipse音乐播放器

    【基于Eclipse音乐播放器开发】是一个项目,旨在利用Eclipse这一流行的Java集成开发环境(IDE)构建一个简单的音乐播放器。Eclipse以其强大的插件系统和灵活性在软件开发领域广受欢迎,尤其对于Java开发者来说,它是...

    Android 编写与酷狗音乐极像的音乐播放器源代码.rar

    Android 编写与酷狗音乐极像的音乐播放器源代码,这个播放器的名字叫做百纳音乐播放器,界面写的挺不错,功能都有,不过没有酷狗多,在本程序的编写中,获得widget界面的引用,widget只能通过RemoteView改变界面,不...

    音乐播放器-AndroidApplication

    在音乐播放器中,Widget可以包含播放/暂停、上一首/下一首等快捷控制按钮,让用户可以直接在桌面管理音乐播放。 4. **媒体播放框架**:Android提供了Media Player类和ExoPlayer库,用于处理音频和视频的播放。音乐...

    android平台音乐播放器

    对于音乐播放状态的显示,我们可以使用通知栏通知或者Widget来提供便捷的控制。 文件名为"Player"的可能是一个主Activity或者服务的类文件。在这个类中,我们将实现与用户交互的逻辑,如点击事件处理,歌曲选择和...

    android音乐播放器

    在Android平台上开发一款音乐播放器是一项常见的编程任务,尤其适合初学者进行实践。这款"android音乐播放器"项目旨在帮助开发者了解如何在Android系统中搜索、管理并播放本地音乐文件。下面将详细介绍该项目中的...

    Java 音乐播放器

    Java音乐播放器是一款基于Java编程语言开发的简单音乐播放软件,它允许用户在计算机上播放音频文件。这个项目对于初学者来说是一个很好的实践项目,因为它涉及到许多基础的Java编程概念和一些特定的库,如Java Media...

    Qt制作音乐播放器流程

    ### Qt制作音乐播放器流程详解 #### 一、前言 在现代软件开发领域,多媒体应用占据了重要地位,其中音乐播放器是用户接触最频繁的应用之一。Qt作为一款跨平台的C++图形用户界面库,提供了强大的功能来帮助开发者...

    迷你音乐播放器

    迷你音乐播放器是一种轻量级的在线音频播放解决方案,它利用了HTML5的先进特性,为用户提供了一种简单而直观的方式来享受音乐。HTML5作为现代网页开发的核心技术之一,其在多媒体处理方面的能力大大增强了互联网的...

    基于Qt设计的音乐播放器

    在Qt中,`QWidget`是所有用户界面组件的基础,这里可能是自定义了一个`Widget`类,用于构建音乐播放器的UI,如播放/暂停按钮、音量控制、进度条、歌曲列表等。`widget.ui`是使用Qt Designer创建的用户界面的XML描述...

    安卓音乐播放器

    根据给定的文件信息,我们可以深入探讨安卓音乐播放器的开发关键知识点,涵盖XML资源文件的应用、UI设计原则以及音频播放的基本实现。 ### XML资源文件的重要性 在安卓开发中,XML资源文件扮演着至关重要的角色,...

    基于Flutter的高颜值第三方网易云音乐播放器源码.zip

    《基于Flutter的高颜值第三方网易云音乐播放器源码解析》 Flutter,作为谷歌推出的开源UI框架,以其高效、跨平台、丰富的自定义能力以及出色的性能表现,深受开发者喜爱。本篇文章将深入探讨一个基于Flutter构建的...

    Android Apollo音乐播放器

    Apollo音乐播放器是国外著名固件团队CM所推出的一款音乐应用,作为CM系列ROM的默认播放器,界面简洁,左右滑动可以切换不同的歌曲筛选,支持各种主题切换,支持锁屏状态下的widget,包括Android4.2,此版本首次在...

    基于flutter的仿网易云音乐播放器.zip

    【标题】"基于flutter的仿网易云音乐播放器"是一个开源项目,它的核心是使用Flutter框架来构建一个类似于网易云音乐的应用程序。Flutter是Google推出的一款用于开发跨平台(包括iOS和Android)移动应用的开源UI工具...

    安卓音乐播放器相关-模仿音乐播放器将歌词始终显示在最上面的view上点击显示的歌词可以进行上下拖动。.rar

    在安卓平台上开发一款音乐播放器时,歌词同步显示是一个重要的功能。这个压缩包文件提供了一个示例,展示了如何实现歌词始终显示在屏幕顶部,并且允许用户通过点击和上下拖动来浏览歌词。以下是对这个功能的详细解释...

Global site tag (gtag.js) - Google Analytics