如何使用NotificationListenerService将小图标从通知转换为byte []?

时间:2017-08-10 05:36:01

标签: android

我有一个应用程序,其中我从设备读取所有传入通知。我在将小图标转换为byte []时遇到问题。我该怎么做才能帮忙?

代码: -

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

1 个答案:

答案 0 :(得分:0)

//use : 
    Context remotePackageContext = null; 
    Bitmap bmp = null;
    try {  
        remotePackageContext = getApplicationContext().createPackageContext(pack, 0);  
        Drawable icon = remotePackageContext.getResources().getDrawable(your_id);  
        if(icon !=null) {  
            bmp = ((BitmapDrawable) icon).getBitmap();
        }

    } catch (Exception e) {  
        e.printStackTrace();  
    }


//now convert this bitmap to byte :

ByteArrayOutputStream baos = new ByteArrayOutputStream();
            bmp.compress(Bitmap.CompressFormat.PNG, 90, baos);
            byte[] b = baos.toByteArray();