Ich arbeite derzeit an einer Android-App, die die Benachrichtigungen aus dem Benachrichtigungscenter neu erstellt. Um die Benachrichtigungsfunktion vollständig wiederherzustellen, habe ich auch versucht, die Benachrichtigungsaktionen in meiner App verfügbar zu machen (z. B. die Zurück/Wiedergabe/Pause/Weiter-Tasten von Musikbenachrichtigungen).Android-Benachrichtigungsaktionssymbol: Ressourcen nicht gefunden Ausnahme
Icon icon = notification.actions[0].getIcon();
((ImageView)view.findViewById(R.id.action0)).setImageIcon(icon);
Aber ich bekomme eine Ressource nicht gefunden Ausnahme in der zweiten Zeile oben.
E/Icon: Unable to load resource 0x7f020259 from pkg=
android.content.res.Resources$NotFoundException: Resource ID #0x7f020259
at android.content.res.Resources.getValue(Resources.java:2558)
[...]
Ich denke, das Problem ist, dass das Symbol aus einer anderen App ist und nicht so einfach zugegriffen werden kann, aber ich kann nicht herausfinden, wie das Symbol richtig zuzugreifen.
Ich weiß, wie auf Ressourcen von anderen Anwendungen zugreifen, wenn ich eine Ressource ID als int habe, aber in diesem Fall habe ich nur ein Symbol, aber keine Ressource ID.
Edit:
Dokumentation: https://developer.android.com/reference/android/app/Notification.Action.html#getIcon()
die anstehenden Absicht von den Aktionen Zugriff funktioniert perfekt
hallo Frecki nur aktualisieren ImageViw Initialisierungsverfahren nicht verwenden ((Image) view.findViewById (R.id.action0)). SetImageIcon (Symbol); aber versuchen Sie Imageview action0 = (Imageview) view.findViewById (R.id.action0); action0.setImageIcon (Symbol); –
kann es gelöst werden. –
@KrunalPatel versuchte es, löste es nicht :( – Frecki