Problem mit NotificationCompat

  • Antworten:8
  • GeschlossenBentwortet
Ludy
  • Admin
  • Forum-Beiträge: 7.957

26.07.2014, 14:53:06 via Website

Ich komm mit der Fehlermeldung nicht klar.
Könnte mir eine auf die Sprünge helfen?

07-21 14:39:58.289: W/System.err(32606): java.lang.Throwable: stack dump
07-21 14:39:58.289: W/System.err(32606): at java.lang.Thread.dumpStack(Thread.java:496)
07-21 14:39:58.289: W/System.err(32606): at android.app.Notification$Builder.applyStandardTemplate(Notification.java:1504)
07-21 14:39:58.289: W/System.err(32606): at android.app.Notification$Builder.makeTickerView(Notification.java:1634)
07-21 14:39:58.297: W/System.err(32606): at android.app.Notification$Builder.buildUnstyled(Notification.java:1678)
07-21 14:39:58.297: W/System.err(32606): at android.app.Notification$Builder.build(Notification.java:1726)
07-21 14:39:58.297: W/System.err(32606): at de.saxaction.ActionServices$LoadRssToNotification.onPostExecute(ActionServices.java:162)
07-21 14:39:58.297: W/System.err(32606): at de.saxaction.ActionServices$LoadRssToNotification.onPostExecute(ActionServices.java:1)
07-21 14:39:58.297: W/System.err(32606): at android.os.AsyncTask.finish(AsyncTask.java:631)
07-21 14:39:58.297: W/System.err(32606): at android.os.AsyncTask.access$600(AsyncTask.java:177)
07-21 14:39:58.297: W/System.err(32606): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
07-21 14:39:58.297: W/System.err(32606): at android.os.Handler.dispatchMessage(Handler.java:99)
07-21 14:39:58.297: W/System.err(32606): at android.os.Looper.loop(Looper.java:137)
07-21 14:39:58.297: W/System.err(32606): at android.app.ActivityThread.main(ActivityThread.java:4918)
07-21 14:39:58.297: W/System.err(32606): at java.lang.reflect.Method.invokeNative(Native Method)
07-21 14:39:58.297: W/System.err(32606): at java.lang.reflect.Method.invoke(Method.java:511)
07-21 14:39:58.305: W/System.err(32606): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
07-21 14:39:58.305: W/System.err(32606): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
07-21 14:39:58.305: W/System.err(32606): at dalvik.system.NativeStart.main(Native Method)

Intent showIntent = new Intent(ActionServices.this, ActionActivitySax.class);
PendingIntent intent = PendingIntent.getActivity(ActionServices.this, 0, showIntent, 0);
NotificationCompat.Builder nComp = new NotificationCompat.Builder(ActionServices.this);
nComp   .setContentTitle(ActionServices.this.getString(R.string.app_name))
    .setContentText("text")
    .setVibrate(pattern)
    .setTicker("neue " + ActionServices.this.getString(R.string.app_name))
    .setSmallIcon(R.drawable.ic_launcher)
    .setAutoCancel(true).setContentIntent(intent);
NotificationManager notificationManager = (NotificationManager)     
ActionServices.this.getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify((int) System.currentTimeMillis(), nComp.build()); //ActionServices.java:162

Danke

— geändert am 26.07.2014, 14:53:51

Gruß Ludy (App Entwickler)

Mein Beitrag hat dir geholfen? Lass doch ein "Danke" da.☺

☕ Buy Me A Coffee ☕

Lebensmittelwarnung-App

✨Meine Wunschliste✨

📲Telegram NextPit News📲

Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

26.07.2014, 17:09:10 via App

Führst du den Geposteten code in einem AsyncTask aus?
Wenn ja es könnte sein dass der NotificationManager im MainThread laufen muss..
das würde mir jetzt spontan dazu einfallen.

LG Pascal //It's not a bug, it's a feature. :) ;)

Georg C.
  • Forum-Beiträge: 235

27.07.2014, 01:09:17 via Website

Hi,
wie Dir bestimmt bekannt ist, bin immer noch Android- Anfänger.
Was ABER die allgemeine Java Syntax betrifft:
- Verstehe nicht wofür / was -> ActionServices.this sein soll?

... Der Fehler weist auf "nComp.build()" hin. ...

Der Fehler entsteht m.M.n. aus dem nicht richtig interpretiertem Context.
ob es in der build() Methode selber oder schon bei initialisieren:

Intent showIntent = new Intent(ActionServices.this, <- ....
PendingIntent intent = PendingIntent.getActivity(ActionServices.this, <- ....
Keine Ahnung - ABER; -> was ist:

ActionServices.this
?

LG
Georg

Sorry für Gramatik & Stilistik Fehler.

Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

27.07.2014, 09:54:34 via App

Ist dieser context dann richtig, sonst kannst du ihn auch als parameter übergeben.

— geändert am 27.07.2014, 09:54:55

LG Pascal //It's not a bug, it's a feature. :) ;)

Ludy
  • Admin
  • Forum-Beiträge: 7.957

27.07.2014, 10:03:58 via Website

Pascal P.

Ist dieser context dann richtig, sonst kannst du ihn auch als parameter übergeben.

Ja ist alles save sieht nur unsauber aus, das mit den Para wird später beim auslagern passieren!

Ich denke das liegt an der "android-support-v4" Lib denn wenn ich statt "NotificationCompat.Builder" die als veraltet Methode "Notification" nutze geht alles klar!

Gruß Ludy (App Entwickler)

Mein Beitrag hat dir geholfen? Lass doch ein "Danke" da.☺

☕ Buy Me A Coffee ☕

Lebensmittelwarnung-App

✨Meine Wunschliste✨

📲Telegram NextPit News📲

Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

27.07.2014, 10:46:43 via Website

Könntest als alternative auch die Normalen Notification (Builder) Methoden benutzen, dann funktioniert die Notification nur bei Geräten mit APi11 und höher, aber ich glaube dass du ja gerade diese Unterstützung zu Androidversionen kleiner APi11 haben willst oder?
Benutzt due die Suppv4 Lib schon an anderer Stelle?
Wenn ja funktioniert diese?
Wenn nicht solltest du die lib mal aktualisieren (neuste Version: Android Support Library, revision 20 (July 2014) ) und prüfen ob die Lib richtig eingebunden ist und im lokalen Lib Verzeichnis liegt.

LG Pascal //It's not a bug, it's a feature. :) ;)

Ludy
  • Admin
  • Forum-Beiträge: 7.957

27.07.2014, 10:50:29 via Website

Pascal P.

Könntest als alternative auch die Normalen Notification (Builder) Methoden benutzen, dann funktioniert die Notification nur bei Geräten mit APi11 und höher, aber ich glaube dass du ja gerade diese Unterstützung zu Androidversionen kleiner APi11 haben willst oder?
Benutzt due die Suppv4 Lib schon an anderer Stelle?
Wenn ja funktioniert diese?
Wenn nicht solltest du die lib mal aktualisieren (neuste Version: Android Support Library, revision 20 (July 2014) ) und prüfen ob die Lib richtig eingebunden ist und im lokalen Lib Verzeichnis liegt.

Bin schon am überlegen Androidversion kleiner 11 wegfallen zulassen aber das sollte nicht der Sinn der Sache sein.
Ja benutz sie auch an anderen stellen z.B. Fragment rev20 der Lib ist eingeflegt.

Edit: So es funktioniert auch nicht, wenn ich es ohne Supportv4 sprich bis auf APi 16 gehe :(

Ich machs jetzt mit Notification#setLatestEventInfo, da gibts keine Fehlerwarnung

— geändert am 27.07.2014, 11:35:51

Gruß Ludy (App Entwickler)

Mein Beitrag hat dir geholfen? Lass doch ein "Danke" da.☺

☕ Buy Me A Coffee ☕

Lebensmittelwarnung-App

✨Meine Wunschliste✨

📲Telegram NextPit News📲