无法从新设备上的 NotificationListenerService 获取通知图标

问题描述

我已经在三星 galaxy S7 上使用我的 NotificationListenerService 应用程序大约一年了。昨天我买了一个三星 galaxy Tab A 来运行我的应用程序。该应用程序的工作方式与在我的 S7 上完全一样,但由于某种原因,它不再从传入的通知获取图标。 S7 运行的是 Android 8.0.0,而平板电脑运行的是 10。我想这可能与它有关,但我找不到与该问题相关的任何内容。这是我用于获取通知详细信息的代码

来自 NotificationService.java 的代码片段

            String title = extras.getString("android.title");
            String text = extras.getCharSequence("android.text").toString();
            int id1 = extras.getInt(Notification.EXTRA_SMALL_ICON);
            Bitmap id = sbn.getNotification().largeIcon;

            Log.i("Package",pack);
            Log.i("Ticker",ticker);
            Log.i("Title",title);
            Log.i("Text",text);

            Intent msgrcv = new Intent("Msg");
            msgrcv.putExtra("package",pack);
            msgrcv.putExtra("ticker",ticker);
            msgrcv.putExtra("title",title);
            msgrcv.putExtra("text",text);
            if (id != null) {
                ByteArrayOutputStream stream = new ByteArrayOutputStream();
                id.compress(Bitmap.CompressFormat.PNG,100,stream);
                byte[] byteArray = stream.toByteArray();
                msgrcv.putExtra("icon",byteArray);
            }
            LocalbroadcastManager.getInstance(context).sendbroadcast(msgrcv);

如果这是一个非常明显的答案,我深表歉意,这是我唯一参与过的 android 项目,距离我上次接触它已经有一段时间了。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)