diff --git a/app/src/main/java/de/ubuntix/android/birthdayreminder/BirthdayReminder.java b/app/src/main/java/de/ubuntix/android/birthdayreminder/BirthdayReminder.java index 6c76690..ca9694c 100644 --- a/app/src/main/java/de/ubuntix/android/birthdayreminder/BirthdayReminder.java +++ b/app/src/main/java/de/ubuntix/android/birthdayreminder/BirthdayReminder.java @@ -81,7 +81,7 @@ private void createNotificationChannel() { if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { CharSequence name = getString(R.string.notificationChannelName); String description = getString(R.string.notificationDescription); - int importance = NotificationManager.IMPORTANCE_DEFAULT; + int importance = NotificationManager.IMPORTANCE_HIGH; NotificationChannel notificationChannel = new NotificationChannel( CHANNEL_ID, diff --git a/app/src/main/java/de/ubuntix/android/birthdayreminder/PreferenceWindow.java b/app/src/main/java/de/ubuntix/android/birthdayreminder/PreferenceWindow.java index c427aff..69ff149 100644 --- a/app/src/main/java/de/ubuntix/android/birthdayreminder/PreferenceWindow.java +++ b/app/src/main/java/de/ubuntix/android/birthdayreminder/PreferenceWindow.java @@ -14,10 +14,11 @@ public class PreferenceWindow extends PreferenceActivity implements OnSharedPref public static final String HIDE_NOTIFICATION = "hideNotificationAfterConfirmation"; public static final String UPDATE_TIME = "updateTime"; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - addPreferencesFromResource(R.layout.preferences); + addPreferencesFromResource(R.xml.preferences); } @Override diff --git a/app/src/main/java/de/ubuntix/android/birthdayreminder/service/BirthdayBroadcastReceiver.java b/app/src/main/java/de/ubuntix/android/birthdayreminder/service/BirthdayBroadcastReceiver.java index cbe8328..f14106d 100644 --- a/app/src/main/java/de/ubuntix/android/birthdayreminder/service/BirthdayBroadcastReceiver.java +++ b/app/src/main/java/de/ubuntix/android/birthdayreminder/service/BirthdayBroadcastReceiver.java @@ -10,8 +10,15 @@ import android.content.Context; import android.content.Intent; import android.content.res.Resources; +import android.graphics.BitmapFactory; +import android.graphics.drawable.Icon; +import android.os.Build; +import android.widget.Toast; +import androidx.annotation.RequiresApi; +import androidx.core.content.ContextCompat; + import java.sql.Time; import java.util.ArrayList; import java.util.Calendar; @@ -34,6 +41,7 @@ public class BirthdayBroadcastReceiver extends BroadcastReceiver { private static final String TIMED = "timed"; + @RequiresApi(api = Build.VERSION_CODES.O) @Override public void onReceive(Context context, Intent intent) { if (intent.getBooleanExtra(TIMED, false)) { @@ -81,6 +89,7 @@ public static void restart(Context context) { start(context); } + @RequiresApi(api = Build.VERSION_CODES.O) private void notifyBirthdays(Context context) { Calendar today = CalendarUtils.todaysCalendar(); Database db = new Database(context.getContentResolver()); @@ -141,21 +150,30 @@ private void notifyBirthdays(Context context) { context, 0, intent, PendingIntent.FLAG_IMMUTABLE); Notification.Builder builder = null; - if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { builder = new Notification.Builder(context,CHANNEL_ID); } assert builder != null; builder.setContentIntent(pi); builder.setSmallIcon(R.drawable.balloons); - builder.setTicker(titleText); - builder.setContentText(StringUtils.join(notificationTexts,", ")); - + builder.setShowWhen(true); + builder.setWhen(System.currentTimeMillis()); + builder.setContentTitle(titleText); + builder.setColorized(true); + builder.setColor(res.getColor(R.color.br_blue_notification)); + builder.setCategory(Notification.CATEGORY_REMINDER); + builder.setPriority(Notification.PRIORITY_HIGH); + builder.setVisibility(Notification.VISIBILITY_PUBLIC); + builder.setStyle(new Notification.BigTextStyle().bigText( + StringUtils.join(notificationTexts,"\n"))); if (countBirthdays > 1) { builder.setNumber(countBirthdays); } + builder.setTicker(String.format(String.valueOf(countBirthdays))); + Notification notification = builder.getNotification(); - notificationManager.notify(0, notification); + notificationManager.notify(1, notification); } } diff --git a/app/src/main/res/layout/birth_contact.xml b/app/src/main/res/layout/birth_contact.xml index 9025380..d125c85 100644 --- a/app/src/main/res/layout/birth_contact.xml +++ b/app/src/main/res/layout/birth_contact.xml @@ -2,7 +2,7 @@ @@ -15,7 +15,6 @@ + android:layout_height="wrap_content" /> \ No newline at end of file diff --git a/app/src/main/res/layout/editor.xml b/app/src/main/res/layout/editor.xml index 7f437ca..2a3d302 100644 --- a/app/src/main/res/layout/editor.xml +++ b/app/src/main/res/layout/editor.xml @@ -2,7 +2,7 @@ @@ -36,7 +35,7 @@