From 70539aa06d1ae061b36cb88ab7bb3a450a154a45 Mon Sep 17 00:00:00 2001 From: yangchong211 Date: Thu, 22 Nov 2018 11:09:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E9=80=9A=E7=9F=A5=E6=A0=8F?= =?UTF-8?q?=E5=B0=81=E8=A3=85=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 10 +++++++- app/build.gradle | 2 +- .../yc/cn/ycnotification/MainActivity.java | 3 ++- notificationLib/build.gradle | 2 +- .../notificationlib/NotificationUtils.java | 24 +++++++++++++++++++ 5 files changed, 37 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 82ff53c..e9ddbf3 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ ### 02.使用方法介绍 - 2.0 如何使用该库 ``` -compile 'cn.yc:notificationLib:1.0.0' +compile 'cn.yc:notificationLib:1.0.2' ``` - 2.1 最简单调用方式 ``` @@ -81,6 +81,14 @@ public void sendNotification(int notifyId, String title, String content , int ic } } ``` +- 2.4 如果你想获取Notification对象,自己发送消息也可以 +``` +NotificationUtils notificationUtils = new NotificationUtils(this); +notificationUtils.setContent(getRemoteViews()); +Notification notification = notificationUtils.getNotification("这个是标题4", "这个是内容4", R.mipmap.ic_launcher); +notificationUtils.getManager().notify(4,notification); +``` + ### 04.图片展示 - ![image](https://github.com/yangchong211/YCNotification/blob/master/image/1.png) diff --git a/app/build.gradle b/app/build.gradle index d505b97..f4b541f 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -22,6 +22,6 @@ android { dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:27.1.1' - compile 'cn.yc:notificationLib:1.0.0' + compile 'cn.yc:notificationLib:1.0.2' //compile project(path: ':notificationLib') } diff --git a/app/src/main/java/com/yc/cn/ycnotification/MainActivity.java b/app/src/main/java/com/yc/cn/ycnotification/MainActivity.java index 9d56f91..1c67a55 100644 --- a/app/src/main/java/com/yc/cn/ycnotification/MainActivity.java +++ b/app/src/main/java/com/yc/cn/ycnotification/MainActivity.java @@ -210,7 +210,8 @@ private void sendNotification3() { private void sendNotification4() { NotificationUtils notificationUtils = new NotificationUtils(this); notificationUtils.setContent(getRemoteViews()); - notificationUtils.sendNotification(4,"这个是标题4", "这个是内容4", R.mipmap.ic_launcher); + Notification notification = notificationUtils.getNotification("这个是标题4", "这个是内容4", R.mipmap.ic_launcher); + notificationUtils.getManager().notify(4,notification); } diff --git a/notificationLib/build.gradle b/notificationLib/build.gradle index 1d1b1e4..ae993a3 100644 --- a/notificationLib/build.gradle +++ b/notificationLib/build.gradle @@ -40,7 +40,7 @@ group = "cn.yc" //发布到JCenter上的项目名字,必须填写 def libName = "YCNotificationLib" // 版本号,下次更新是只需要更改版本号即可 -version = "1.0.0" +version = "1.0.2" /** 上面配置后上传至jcenter后的编译路径是这样的: compile 'cn.yc:YCBannerLib:1.0' **/ //生成源文件 diff --git a/notificationLib/src/main/java/com/ycbjie/notificationlib/NotificationUtils.java b/notificationLib/src/main/java/com/ycbjie/notificationlib/NotificationUtils.java index d9dd318..b0a19cf 100644 --- a/notificationLib/src/main/java/com/ycbjie/notificationlib/NotificationUtils.java +++ b/notificationLib/src/main/java/com/ycbjie/notificationlib/NotificationUtils.java @@ -84,6 +84,30 @@ public void clearNotification(){ getManager().cancelAll(); } + /** + * 获取Notification + * @param title title + * @param content content + */ + public Notification getNotification(String title, String content , int icon){ + Notification build; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + //android 8.0以上需要特殊处理,也就是targetSDKVersion为26以上 + //通知用到NotificationCompat()这个V4库中的方法。但是在实际使用时发现书上的代码已经过时并且Android8.0已经不支持这种写法 + Notification.Builder builder = getChannelNotification(title, content, icon); + build = builder.build(); + } else { + NotificationCompat.Builder builder = getNotificationCompat(title, content, icon); + build = builder.build(); + } + if (flags!=null && flags.length>0){ + for (int a=0 ; a