1、
IntentService
public ServiceTest() {
super("yyyyyyyyyyy");
}
@Override
protected void onHandleIntent(Intent intent) {
Log.e("ServiceTest", "onHandleIntent");
while(true){
nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); // 1.获取NotificationManager对象
n = new Notification(); // 2.初始化Notification对象
n.flags = Notification.FLAG_ONGOING_EVENT; // 设置通知的icon
n.icon = R.drawable.notify_icon; // 设置通知在状态栏上显示的滚动信息
n.tickerText = "一个通知"; // 设置通知的时间
n.when = System.currentTimeMillis();
// 3.设置通知的显示参数
Intent intentNotify = new Intent(ServiceTest.this, NotifyActivity.class);
PendingIntent pi = PendingIntent.getActivity(ServiceTest.this, 0, intentNotify, 0);
n.setLatestEventInfo(ServiceTest.this, "通知标题", "通知内容", pi);
// 4.发送通知
nm.notify(ID, n);
try {
Thread.sleep(10*1000);
} catch (InterruptedException e) {
Log.e("ServiceTest", "死循环出错");
}
}
}
@Override
public void onDestroy() {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setAction("a.a.a");
ServiceTest.this.sendBroadcast(intent);
}
<receiver android:name=".Broacast" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" /><!-- 系统启动 -->
<action android:name="android.intent.action.SIG_STR" /><!-- 电话的信号强度已经改变 -->
<action android:name="android.intent.action.CONFIGURATION_CHANGED" /><!-- 设备的配置信息已经改变 -->
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
<action android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
<action android:name="a.a.a"></action>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</receiver>
Intent intente = new Intent(context,ServiceTest.class);
context.startService(intente);