Notifiation通知的一些知识
来源:互联网 发布:上海美猴网络 51 编辑:程序博客网 时间:2024/05/05 09:56
通知,即push消息,需要添加icon、defaults、flags;
下面是一些知识点:是通过开启一个定时器,循环判断是否是桌面,是桌面则发送push信息,点击 push,响应一个INTENT_ACTION_VIEW,发送一个url链接到浏览器:
/**
* 开始定时器
*/
private void startTimer() {
if (mTimer == null) {
mTimer = new Timer();
CheckTask lockTask = new CheckTask();
mTimer.schedule(lockTask, 0L, 1000L);
}
}
/**
* 关闭监听服务
*/
public void closeTimer() {
if (mTimer != null) {
mTimer.cancel();
mTimer = null;
}
}
/**
* 定时器执行任务
*/
public class CheckTask extends TimerTask {
@Override
public void run() {
if (PackageMangerTool.isLauncherRunnig(MainActivity.this)) {
Intent it = new Intent("action.after.out");
showNotifation(getApplicationContext(), title, pic, it);
closeTimer();
MainActivity.this.finish();
}
}
}
@SuppressWarnings("deprecation")
private void showNotifation(Context mContext, String title, String pic,
Intent it) {
//获取NotificationManager
NotificationManager manager = SystemServiceUtils
.getNotificationManager(mContext);
Notification notification = new Notification();
notification.icon = android.R.drawable.ic_dialog_info;// 默认图标
notification.defaults |= Notification.DEFAULT_ALL;// 使用默认闪光提示
notification.flags |= Notification.FLAG_AUTO_CANCEL; // 表明在点击了通知栏中的"清除通知"后,此通知不清除,经常与FLAG_ONGOING_EVENT一起使用
//notification.tickerText = "wwq";// 设置标题
notification.flags |= Notification.FLAG_NO_CLEAR;// 不可清除
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
// 获得PendingIntent
PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0);
notification.setLatestEventInfo(this,push的title,
push的内容, pi);
manager.notify(1, notification);
}
- Notifiation通知的一些知识
- 有关通知的一些要点
- iOS 的本地通知知识的解释
- .net的一些知识
- 环境变量的一些知识
- 内存的一些知识
- 一些java的知识
- XML的一些知识
- foreach的一些知识
- dll的一些知识
- 哈希表的一些知识
- 线程的一些知识
- java 的一些知识
- ant的一些知识
- winform的一些知识
- Hashtable的一些知识!
- PCI的一些知识
- SYBASE的一些知识
- device not managed by NetworkManager
- Activity的启动方式和flag详解[刚哥的]
- appcan 在子窗口中关闭窗口
- 初学C语言之结构体
- SQL_CASE WHEN &临时表 &xml to table 混合实例
- Notifiation通知的一些知识
- 一次单片机最小系统的调试
- 最小生成树-Prim算法和Kruskal算法
- Codeforces Round #290 (Div. 2) E. Fox And Dinner 网络流 最大流
- C/C++中的日期和时间 time_t与struct tm变换
- scala中span和partition区别
- NYOJ 822 画图
- DBMonster入门
- STM8S---独立按键IO口设置及按下事件问题