Graue Schaltflächen beim Hinzufügen von Aktionen zu Benachrichtigungen in Jelly Bean

Ich füge zwei Schaltflächen zu einer Benachrichtigung in meiner App hinzu, die auf Ziel-API Level 8 eingestellt ist. Das Problem ist, dass die beiden Schaltflächen als zwei große graue Schaltflächen erscheinen, völlig fehl am Platz mit dem Rest der Benachrichtigungen. Ich habe es sowohl bei Nexus 7 als auch bei Galaxy Nexus getestet.

Bildbeschreibung hier eingeben

  • Benutzerdefinierte Benachrichtigung mit Google Cast SDK v3
  • Konvertieren Sie normales Java Array oder ArrayList zu Json Array in Android
  • Kann kein PlusClient erstellen
  • Wie zeigt man auf dem Bildschirm die Cursorposition auf einem Android Tablet oder Smartphone?
  • Wie kann ich bestätigen, dass signierte Daten für In-App Billing Android Market mit Java (Servlet)
  • Android Gerätekonfiguration für AOSP
  • Alle Beispiele, die ich gesehen habe, haben die schön aussehenden schwarzen Tasten wie die eingehende Anruf Benachrichtigung: http://www.androidng.com/wp-content/uploads/2012/07/android-jelly-bean-notifications.jpeg

    Ich würde vermuten, das wäre einfach, aber kein solches Glück heute. Weiß jemand, wo ich die falsche Wendung genommen hätte? Unten ist ein Snippet von meinem Code, der die Benachrichtigung mit der neuesten Support-Bibliothek generiert.

    NotificationManager nm = (NotificationManager) this .getSystemService(Context.NOTIFICATION_SERVICE); android.support.v4.app.NotificationCompat.Builder builder = new android.support.v4.app.NotificationCompat.Builder(this); builder.setContentIntent(contentIntent) .setSmallIcon(R.drawable.ic_stat_radio) .setContentTitle(message) .setTicker(message) .setPriority(android.support.v4.app.NotificationCompat.PRIORITY_HIGH) .setWhen(System.currentTimeMillis()) .setAutoCancel(false) .addAction(android.R.drawable.ic_btn_speak_now, "Play", contentIntent) .addAction(android.R.drawable.ic_dialog_map, "Stop", contentIntent) .setContentText(message); Notification n = builder.build(); //nm.notify(0, n); startForeground(1, n); 

  • "GoogleApiClient ist noch nicht verbunden" Ausnahme in Cast-Anwendung
  • Wie kann ich veröffentlichen, um die x86 und ARM apks meiner Cordova-Crosswalk App zu speichern?
  • ViewPagerIndicator Tabs: Icons über Text
  • Wie man ein Android-Handy programmgesteuert herunterläuft?
  • Wie deaktiviere ich Google-Erlaubnis, um regelmäßig installierte Apps auf meinem Handy zu überprüfen?
  • Erstellen von Testabhängigkeiten bei der Verwendung von Dagger2
  • 2 Solutions collect form web for “Graue Schaltflächen beim Hinzufügen von Aktionen zu Benachrichtigungen in Jelly Bean”

    So geschieht dies, weil dein targetSdk in deiner AndroidManifest.xml <11 ist.

    Ich glaube, die Änderung der Kompatibilität, die passiert, wenn Sie Ziel 11 ist, dass das Standard-Thema, weil Holo. Da dein (und mein) Ziel ist weniger als 11, es ist auf einige Kompatibilität Thema, dass es auf diese Tasten gilt, obwohl es nicht sollte. Ich gehe davon aus, dass, obwohl Ihre App / Aktivität auf Holo gesetzt ist, es nicht wirklich auf die Benachrichtigung anwenden, da sie sich in einem anderen Prozess befinden.

    Das ist nur meine Vermutung. Mit dem CommonsWare-Benachrichtigungs-Demo und nur das Ändern der targetSdk zeigt dieses Verhalten.

    Android studio (0.8.11) das gleiche Problem, mit Android studio (0.8.11) mit Gradle (0.13.0)

     compileSdkVersion 20 buildToolsVersion "20.0" defaultConfig { applicationId "x.xx.xxxxxx" minSdkVersion 10 targetSdkVersion 20 versionCode x versionName "x.xx" } 

    Löse es durch Hinzufügen uses-sdk zum Manifest

     <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="20" /> 

    Ich weiß, dass der Manifest Wert durch den Gradle Wert überschrieben wird. Aber das löst es

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.