Po prostu eksperymentuję z rozwojem Androida, a kilka dni temu natknąłem się na tę aplikację o nazwie "Go SMS Pro", która między innymi może konfigurować powiadomienia w różnych kolorach (niebieski, zielony , pomarańczowy, różowy i jasnoniebieski). Tak więc próbowałem to zrobić samodzielnie w mojej własnej aplikacji, jednak nie mogę zmienić koloru ani migotania wewnętrznego diody LED. Obecnie używam tego kodu:Zmiana koloru LED dla powiadomień
public class MainActivity extends Activity {
static final int NOTIFICATION_ID = 1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button button = (Button) findViewById(R.id.button);
button.setOnClickListener(buttonOnClick);
}
public OnClickListener buttonOnClick = new OnClickListener() {
@Override
public void onClick(View v) {
String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns);
Notification notification = new Notification(R.drawable.icon, "Hello", System.currentTimeMillis());
notification.flags = Notification.FLAG_SHOW_LIGHTS | Notification.FLAG_AUTO_CANCEL;
notification.ledARGB = Color.BLUE;
notification.ledOnMS = 1000;
notification.ledOffMS = 300;
Context context = getApplicationContext();
CharSequence contentTitle = "My notification";
CharSequence contentText = "Hello World!";
Intent notificationIntent = new Intent(MainActivity.this, MainActivity.class);
PendingIntent contentIntent = PendingIntent.getActivity(MainActivity.this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
mNotificationManager.notify(NOTIFICATION_ID, notification);
}
};
}
Ale jak powiedziałem, to nie działa tak, jak chcę; zamiast tego po prostu miga na zielono z domyślnym opóźnieniem, a nie tym, który ustawiłem w moim kodzie.
Czy ktoś może zobaczyć, co jest nie tak z moim kodem, lub wiem, czy muszę zrobić coś innego, aby to osiągnąć?
Próbowałem zarówno ustawienie 'notification.defaults' na' 0' i 'notification.ledARGB' na wartość szesnastkową (mimo że' Color.BLUE' ma stałą wartość '0xff0000ff' mimo to), ale żadne z tych rzeczy działają. Jestem również świadomy, że sprzęt może zrobić przybliżenie, ale wiem na pewno, że powinien przynajmniej być w stanie zrobić kolory: zielony, niebieski, pomarańczowy i różowy. – Frxstrem
Dość dziwne. Czy aplikacja ** Go SMS Pro ** skutecznie zmienia kolory w telefonie? Wiem, że niektóre telefony mają problemy z kolorami powiadomień LED. – Femi
Tak, przynajmniej do kolorów ustawionych w tej aplikacji (jak wspomniałem, zielony, niebieski, pomarańczowy i różowy). Próbowałem jednak innych aplikacji, które mają zmienić kolor diody LED, które nie działają, i po prostu pokazują zielone, migające światełko, niezależnie od wybranego koloru, tak jak to robi moja aplikacja. – Frxstrem