`
Weich_JavaDeveloper
  • 浏览: 100264 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

接受开机广播 + 启动Service + 通知栏

 
阅读更多

MobileReceiver.java

public class MobileReceiver extends BroadcastReceiver {

	@Override
	public void onReceive(Context context, Intent intent) {

		if(intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)){
			Intent myIntent = new Intent();
			myIntent.setAction("android.intent.service.TASKSERVICE");
			context.startService(myIntent);
		}
	}
}

ToDoTaskService.java

public class ToDoTaskService extends Service {

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

	@Override
	public void onCreate() {
		
		Intent intent = new Intent(this, ToDoTaskActivity.class);
		intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
		intent.setAction("android.intent.action.TASK");
		if(MainActivity.m_NotificationManager == null){
			MainActivity.m_NotificationManager = (NotificationManager)this.getSystemService(Context.NOTIFICATION_SERVICE);
		}
		MainActivity.setNotiActivity(MainActivity.taskName, MainActivity.TO_DO_TASK,android.R.drawable.presence_online, "您有代办任务...", "您有3个未审批任务...", intent, this.getApplicationContext(), false);
		super.onCreate();
	}
}
 
<receiver android:name=".receiver.MobileReceiver">
			<intent-filter>
				<action android:name="android.intent.action.BOOT_COMPLETED"></action>
			</intent-filter>
		</receiver>
		<service android:enabled="true" android:name=".service.ToDoTaskService">
			<intent-filter>
				<action android:name="android.intent.service.TASKSERVICE"></action>
			</intent-filter>
		</service>
 
public static void setNotiActivity(String str,int nID,int iconId, String info ,String content,Class<? extends Activity> activity,Context context, boolean sound){

		Intent notifyIntent = new Intent(context,activity);  
		notifyIntent.setFlags( Intent.FLAG_ACTIVITY_SINGLE_TOP);
		setNotiActivity(str,nID,iconId,info,content,notifyIntent,context,sound);
	}

	public static void setNotiActivity(String str,int nID,int iconId, String info ,String content,Intent intent,Context context, boolean sound){
		PendingIntent appIntent=PendingIntent.getActivity(context,0,intent,0);
		setNotiType(str,nID,iconId,info,content,appIntent,context,sound);
	}
	
	public static void setNotiService(String str,int nID,int iconId, String info ,String content,Intent intent,Context context, boolean sound){
		PendingIntent appIntent=PendingIntent.getService(context,0,intent,0);
		setNotiType(str,nID,iconId,info,content,appIntent,context,sound);
	}

	public static void removeNoti(String str,int nID){

		m_NotificationManager.cancel(str, nID);
	}

	public static void setNotiType(String str,int nID,int iconId, String info ,String content,PendingIntent appIntent , Context context, boolean sound){

                
		Notification myNoti=new Notification();
                //禁止用户清除通知
		myNoti.flags = Notification.FLAG_NO_CLEAR;
		myNoti.icon=iconId;
		myNoti.tickerText=content;
		if(sound){
			myNoti.defaults=Notification.DEFAULT_SOUND;
		}
		myNoti.setLatestEventInfo(context,info,content,appIntent);
		m_NotificationManager.notify(str,nID,myNoti);
	}
 
分享到:
评论
1 楼 chengchangmu 2011-09-23  
代码不完全

相关推荐

    服务+广播+通知

    在Android开发中,"服务+广播接收+通知栏+通知栏样式"是构建高效、交互式应用程序的关键组件。本文将详细解析这些概念及其在实际应用中的作用。 首先,我们来了解**服务(Service)**。在Android系统中,服务是一种在...

    Android后台保持运行,开机后自动启动设定好的APK的DEMO.zip

    如果你的服务需要消耗大量资源或者长时间运行,强烈建议使用前台服务,因为它会在通知栏显示一个通知,告知用户有应用正在后台运行,防止系统因资源限制而意外停止服务。通过`startForeground()`方法可以将服务设置...

    android服务自启动Service以及BroadcastReceiver和Notification

    android service Notification ...安装的服务开机自启动,service定时的打印消息,消息同时显示在通知栏,窗体界面的跳转,自定义控件的开发。系统广播,定时广播,轮询广播等。BroadcastReceiver轮询广播

    消息通知栏demo

    以下为程序启动流程: 1.开机启动AlarmService 2.AlarmActivity一秒后发送一条系统广播 ...5.单击消息,取消通知栏信息 6.但程序关闭时,单击消息,重启程序 小知识:BroadCast、Service、Notification,初学者适用

    安卓Android源码——后台保持运行,开机后自动启动设定好的APK的DEMO.zip

    这会在通知栏显示一个通知,告知用户应用正在后台运行。 9. **源码分析**:DEMO中的源码应该包含了创建BroadcastReceiver、配置Service、处理ACTION_BOOT_COMPLETED广播以及启动其他APK的逻辑。通过阅读和理解这...

    安卓后台服务相关-安卓定时任务每隔多久后台执行service可以做到很流氓开机自启动甚至你把程序杀死他还会执行.zip

    前台服务会在通知栏显示一个通知,表明服务正在运行,从而使得系统将其视为用户当前活动的一部分,减少被系统清理的可能性。要创建一个前台服务,需要调用`startForeground()`方法,并提供一个通知。 在学习和使用...

    android Service运用

    前台Service会显示通知栏图标,提醒用户服务正在运行,避免系统因优化而杀死Service。 6. **Service的线程处理** - 默认情况下,Service在主线程中运行,不应执行耗时操作,否则可能导致ANR(Application Not ...

    BroadcastReceiver与Service的例子

    例如,我们可以创建一个BroadcastReceiver来监听系统的开机广播,从而实现应用的开机自启动设置。对于音量设置,BroadcastReceiver可以监听音量键事件,动态调整应用程序的声音设置。 `Service`则是一种在后台运行...

    android系统服务大全与广播大全

    广播是Android中的一种全局事件通知机制,当系统或应用触发特定事件(如开机、网络状态变化、接收到短信等)时,会发送广播意图(Intent)。所有注册了相应BroadcastReceiver的程序都可以接收并处理这些广播。 广播...

    安卓广播broadcastreceiver

    在提供的压缩包文件"WZWBroadcast"中,可能包含了实现上述功能的示例代码,包括BroadcastReceiver的实现、IntentFilter的配置以及通知栏的展示。开发者可以通过学习和分析这些代码,更深入地理解BroadcastReceiver的...

    service 进程 保活1

    此外,一些定制ROM甚至取消了开机广播,以降低应用间的唤醒。 2. **白色保活** 白色保活是指通过启动前台Service来保持进程活跃。前台Service会显示一个通知,让用户知道应用正在后台运行。这种方法虽然明显,但...

    Android 启动流程分析

    此外,它还会启动SystemUI,这是用户与系统交互的主要界面,包含了通知栏、快速设置等元素。 一旦这些基础服务准备就绪,SystemServer会启动第一个用户界面——Launcher,也就是桌面应用,让用户可以开始使用设备。...

    serviceonbooting:在启动示例上启动服务

    4. **查看通知栏**:如果服务成功启动,通常会在通知栏显示相关的通知。这是服务运行的一种常见反馈机制,开发者可以借此确认服务是否按预期工作。 标签“Java”表明这个项目是使用Java语言编写的,Java是Android...

    ClockDemo.rar

    7. **通知栏通知**:当闹钟响起时,通常会在通知栏显示一个通知,用户可以通过点击它来关闭闹钟或设置其他操作。这需要对NotificationCompat类的使用有所了解。 8. **多媒体播放**:为了播放闹钟音效,需要了解如何...

    android+经典代码例子

    6. **BroadcastReceiver**:广播接收器用于监听系统或自定义广播事件,比如网络状态改变、开机启动等。熟悉BroadcastReceiver的注册与使用,可以让你的应用在特定条件下做出响应。 7. **AsyncTask**与线程管理:...

    android简易闹钟

    7. **Notification**: 当闹钟触发时,应用通常会通过通知栏提醒用户。`NotificationCompat.Builder`可以帮助你创建并发送通知,可以包含标题、消息、图标,甚至可以添加操作按钮。 8. **Service**: 虽然广播接收器...

    安卓demo注册内容显示到桌面

    应用可以发送通知,并配置其在通知栏和/或锁屏上显示,甚至创建可扩展的通知,让用户可以直接在通知上进行操作。 7. **权限管理**:如果需要访问用户的个人数据或者在后台运行,应用可能需要请求相应的权限,如`...

    android ppt

    **Broadcast Receiver** 是Android系统广播事件的接收者,它可以监听并响应系统或应用发出的各种广播事件,如设备开机、网络状态变化等。Broadcast Receiver可以在AndroidManifest.xml中静态注册,也可以在代码中...

    android+api+教程

    BroadcastReceiver允许应用接收系统广播事件,如设备开机、网络状态改变等,从而实现相应的响应。 七、Content Provider Content Provider是Android中用于共享数据的组件,它可以使得应用的数据对其他应用可见,...

    Andorid项目源码 闹钟程序.zip

    8. **通知机制**:当闹钟触发时,通常会通过NotificationCompat.Builder创建一个通知,显示在状态栏上,提醒用户。通知可以包含文本、图标、声音和振动等元素。 9. **设置与保存**:用户设定的闹钟参数需要持久化...

Global site tag (gtag.js) - Google Analytics