从通知可分割对象中读取内容以进行后续通知

2024-01-20

我正在尝试构建 Whatsapp 通知过滤应用程序,在其中监视来自 Whatsapp 的所有通知并根据过滤策略删除消息。

我可以使用下面的链接代码获取消息内容从 Parcelable、contentView 或 contentIntent 中提取通知文本 https://stackoverflow.com/questions/9292032/extract-notification-text-from-parcelable-contentview-or-contentintent仅适用于第一条消息

但问题是我只能获取第一条消息,如果用户没有阅读第一条消息,那么第二条消息之后我只能收到“来自发件人的两条消息”而不是实际的消息。

注意:我得到

android.text = 第一条消息的实际消息,但从第二条消息/通知开始为空 android.title = 发件人 android.summaryText = "n条新消息"

任何帮助,将不胜感激。


是的,最后经过几个小时的谷歌搜索后,我设计了一个对我有用的代码。

Bundle extras = sbn.getNotification().extras;
    CharSequence[] lines = extras.getCharSequenceArray(Notification.EXTRA_TEXT_LINES);
    JSONArray s = new JSONArray();
    for (CharSequence msg : lines) {
                    msg = removeSpaces(msg);
                    if (!TextUtils.isEmpty(msg)) {
                        s.put(msg.toString());
                    }
                }
    private static String removeSpaces(@Nullable CharSequence cs) {
            if (cs == null)
                return null;
            String string = cs instanceof String ? (String) cs : cs.toString();
            return string.replaceAll("(\\s+$|^\\s+)", "").replaceAll("\n+", "\n");
        }

这里 JSONArray 包含我想要的所有消息

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从通知可分割对象中读取内容以进行后续通知 的相关文章

  • 致命异常:Google 地图 V2 中的 GLThread、StackOverflowError

    我正在实施 Google 地图 V2 并利用从外部 GPX 文件接收的交付路线 设备路径 设备当前位置和交付点位置 问题是它大多数时候都有效 我收到的错误 当它不起作用时 是下一个 03 16 20 48 37 811 I dalvikvm
  • getItemAtPosition() 未在列表视图中返回值

    我创建了一个自定义基本适配器类 用图像和文本填充列表视图 类的代码如下 public class ViewAdapter extends BaseAdapter private Activity activity private Strin
  • Whatsapp 自动机器人无法在 WhatsApp 联系人列表中搜索

    我正在尝试实现一个 WhatsApp 机器人 它使用chromedriver并打开 Whatsapp 网页 并向联系人发送消息 这些是该程序的步骤 从 Excel 文件中读取联系人信息 设置您想要发送消息的时间以及要发送的消息 搜索该名称并
  • Android - 手机锁定时执行操作

    我想知道如何在手机锁定时执行某些操作 或继续侦听传感器或电池更换事件 当手机锁定时 它会停止监听传感器的变化 我尝试过使用唤醒锁 但它不起作用 也许我使用错误 任何帮助 将不胜感激 我建议为此使用服务 即使手机被锁定 它们也会在后台运行 这
  • 从 admob 独立 SDK 切换到 Google Play 服务 SDK 时,apk 大小会膨胀

    使用 Admob SDK 我的 apk 大小为 230Kb 当用 google play services SDK 替换 Admob SDK 时 它是 1 5MB 膨胀了 6 倍以上 我想完整的 Google Play 服务客户端 SDK
  • 读取 Android 4.2 中的 APN?

    我有个问题阅读 APN在安卓v4 2中 是读 不是写APNS 它抛出一个安全异常 没有写入 APN 设置的权限 用户 10068 和当前用户都没有权限 进程有 android permission WRITE APN SETTINGS 相同
  • 在Android中打开浮动菜单(上下文菜单)?

    我创建了一个新菜单 名为 drmenu xml 当我按下菜单按钮时它可以正常工作 但是当用户按下按钮时我需要打开上下文菜单 下面的代码按钮只显示一个吐司 这是我的 xml 布局
  • android新手需要了解“?android:attr/actionBarSize”

    我正在经历拉尔斯 沃格尔的教程 http www vogella com articles AndroidFragments article html在使用 Fragments 时 我遇到了以下代码 android layout margi
  • Android 服务 START_STICKY START_NOT_STICKY

    我需要让我的服务始终在后台运行 并使用 startService 函数启动我的服务 无论应用程序的状态如何 我都不想重新启动服务 这是我的观察 START STICKY gt 如果应用程序启动 则服务正在重新启动 当应用程序关闭时 服务也会
  • Android 应用程序主活动出现 ClassNotFoundException

    大多数设备都可以运行我的应用程序 但我收到此错误报告 java lang RuntimeException Unable to instantiate activity ComponentInfo com company app com c
  • Android 和 iOS 中的应用程序文件大小差异

    通过使用两个应用程序分发服务 Android 市场和 Apple 应用程序商店 我发现了一个谜团 Apple 应用程序的文件大小通常大于 Android 应用程序 我似乎找不到任何对这些差异的解释 而且这似乎是一个未触及的主题 我尝试过分配
  • Android/java:从 ProGuard 过渡/迁移到 R8?

    我想知道如何从ProGuard to R8 我是否应该从 Gradle 文件中删除与 Proguard 相关的行并添加android enableR8 true线代替 Thanks Proguard 由 GuardSquare 开发和维护
  • Android:NotificationCompat.MediaStyle 操作按钮不执行任何操作

    我有一个简单的 Android 应用程序 其中包含一个Activity and a Service源自于MediaBrowserServiceCompat 我已成功将其设置为通过使用播放我的主要活动中的音频MediaBrowserCompa
  • 无法在 Android 中使用自定义数组适配器进行搜索?

    我无法从以下位置搜索listview 我尝试了各种方法 但它对我不起作用 没有错误 我有其他方式进行搜索 但我想让这种方式成为可能 这是代码 public class MainActivity extends Activity implem
  • android device.getUuids 返回 null

    我正在尝试使用低功耗蓝牙 BLE 通过 Android 应用程序连接到 Arduino Uno 我正在 Android Studio 上进行开发 使用 Samsung Galaxy S4 和 Android 版本 5 0 1 进行测试我点击
  • Android Studio错误的含义:未注释的参数覆盖@NonNull参数

    我正在尝试 Android Studio 创建新项目并添加默认值后onSaveInstanceState方法创建 MyActivity 类 当我尝试将代码提交到 Git 时 我收到一个我不明白的奇怪错误 代码是这样的 我得到的错误是这样的
  • 安卓独立包

    我有一个很大的 UI 大约 20 25 个屏幕 我应该如何组织我的代码 我应该按功能分成不同的包吗 我是否应该为所有 UI 类创建一个包 然后创建子包进行组织 或者我不应该创建单独的包并组织到文件夹中 任何帮助将不胜感激 当您创建文件夹时
  • 如何根据受保护的 String doInBackground 方法中 AsyncTask 的结果调用 Toast.makeText() ?

    我从 AsyncTask 中的数据库中获取数据 如果它为空 我想吐司一个警告文本 我在 AsyncTask 中尝试过 但我了解到它不是在工作线程中调用的 这是我的 doInBackground 方法 protected String doI
  • 如何在 Android 中不使用 Intent 裁剪图像

    我正在尝试裁剪图像我使用了下面的代码 意图 i new Intent Intent ACTION PICK android provider MediaStore Images Media EXTERNAL CONTENT URI i pu
  • 如何为部分 Android 活动创建通用代码?

    我的申请中有 14 项活动 这 9 个活动中包含自定义标题栏和选项卡窗格 所以在这里我需要在一个地方编写这个通用代码 而不是在每个包含自定义标题栏和选项卡窗格代码的活动中编写冗余代码 即布局及其活动特定代码 有哪些可能的方法可以做到这一点

随机推荐

  • 如何以编程方式获取父主题

    假设我在以下位置声明了以下自定义主题themes xml
  • 计算 HH:mm 格式的时差

    我有两个时间戳HH mm格式 我需要计算它们之间的差异 代表相同的时间间隔HH mm format JavaScript 有什么实用工具可以实现这一点吗 我尝试使用Date对象 但我找不到有用的东西 你能帮助我吗 您只需将两个日期相减即可
  • 将 ControlParameter 添加到 SqlDataSource 会阻止查询和数据绑定吗?

    我有一个 SqlDataSource 调用存储过程并且工作正常 如果我添加一个
  • 如何从片段中获取EditText

    我创建了AlerDialog AlertDialog Builder alert new AlertDialog Builder appContext alert setTitle Add subcontractors setView R
  • java赋值中可能存在逻辑错误的误解

    我在让这个项目正常工作方面遇到了很多问题 但我目前一直致力于让这个课程正常工作 它应该做的就是从无线电类中获取当前电台并将其传递给此类 问题是我试图在 AM 和 FM 之间进行选择 但每次运行它时 它只显示 AM 电台 我不明白为什么它会自
  • 每个RAILS_ENV运行多个delayed_job实例

    我正在开发一个具有多个 RAILS Env 的 Rails 应用程序 env name1 adapter mysql username root password host localhost database db name 1 env
  • Java 到 C# 的转换。如何在位图上绘制矩形?

    首先 我对 C 和 Java 都是菜鸟 因此 我被分配了将 java 小程序转换为 C 的任务 除了使用鼠标事件通过拖放在屏幕上绘制矩形之外 我还成功完成了所有操作 应该发生的情况是 当我单击鼠标并在屏幕上拖动鼠标时 应该会出现一个没有填充
  • 应用程序应该如何响应延迟的 SKPaymentTransaction?

    我的应用程序中有应用内购买 iOS 8 的新功能是 延迟 交易 部分描述见技术说明 https developer apple com library ios technotes tn2259 index html 我了解它的作用 并且我不
  • 让 Rails 2.3.x 忽略 i18n gem

    我有一个 Rails 2 3 5 项目 它使用 Rails 的本地化功能 我也碰巧安装了 Rails 3 beta 这取决于 i18n gem Rails 2 3 5 很乐意自行处理本地化 无需安装 i18n 但是如果 i18n gem 可
  • 如何根据物体位置旋转图像?

    首先 对帖子的长度表示抱歉 我正在开展一个根据叶子图像对植物进行分类的项目 为了减少数据的方差 我需要旋转图像 以便茎在图像底部水平对齐 270 度 到目前为止我在哪里 到目前为止 我所做的是创建一个阈值图像 然后从那里找到轮廓并在对象周围
  • 如何在预测数据上使用 Pandas get_dummies?

    使用熊猫后get dummies在 3 个分类列上获得一个热编码数据框 我训练了 取得了一些成功 感知器模型 现在我想根据新的观察来预测结果 它不是热编码的 有什么办法可以记录get dummies列映射要重新使用吗 据我所知 目前没有自动
  • 如何让一张表只允许一行?

    我有一张我想要的桌子只有一项 因此 如果有人尝试插入另一行 则只有在有人删除了先前存在的行之后才允许插入另一行 如何为这样的表设置规则 A UNIQUE约束允许多行null值 因为两个null值不被认为是相同的 除非使用时NULLS NOT
  • MATLAB:将图形打印为 pdf,如 MATLAB 中所示

    我正在尝试将图形导出 另存为 打印 为 pdf 格式 然而 无论我如何配置设置 图形周围都有很大的边距 当我将图形导出为 eps 格式时 不存在这样的问题 即图形看起来就像在 MATLAB 中显示的一样 如何将图形导出为 pdf 格式 使其
  • cmake:每个事务单元的编译统计信息

    我需要弄清楚哪些翻译单元需要重组以缩短编译时间 如何使用 cmake 掌握翻译单元的编译时间 以下属性可用于计算编译器和链接器调用的时间 规则 启动 编译 https cmake org cmake help v3 4 prop gbl R
  • 如何检查两个值是否是使用同一个构造函数创建的?

    假设我有 type t A of int B of int let xx A 2 let yy A 3 我想测试 xx 和 yy 的构造函数是否相等 是否有捷径可寻 而不必 match xx with A gt match yy with
  • 如何在反应中的文件选择器中获取文件名?

    你能告诉我如何在反应中的文件选择器中获取文件名吗 我试图在选择文件后在输入字段中设置值file chooser这是我的代码https stackblitz com edit react d4kp1d file bulk js https s
  • 如何混合 Singleton 来创建一个接受初始化参数的类?

    我已经了解了如何将类定义为单例 如何在 Ruby 中创建单例 https stackoverflow com questions 4677 how do i create a class using the singleton design
  • 如何通过自动布局功能使 TableView 高度动态化?

    我在 Xcode 5 中使用自动布局 我将表视图的高度设置为大于或等于 200px 我希望它具有动态大小 因为有时它会有很多行 有时它会有几行 但尺寸始终为 200px 如果内容大于此值 我应该向下滚动以查看下面的行 What should
  • 获取连接到服务器的在线用户的名称

    我是 ASP NET 新手 我经历过这个link http www aspdotnetfaq com Faq How to show number of online users visitors for ASP NET website a
  • 从通知可分割对象中读取内容以进行后续通知

    我正在尝试构建 Whatsapp 通知过滤应用程序 在其中监视来自 Whatsapp 的所有通知并根据过滤策略删除消息 我可以使用下面的链接代码获取消息内容从 Parcelable contentView 或 contentIntent 中