publicclassMainActivityextendsAppCompatActivity {
@OverrideprotectedvoidonCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
finalNotificationHelpernotificationHelper = newNotificationHelper(this);
notificationHelper.createNotification("Notification Oreo","GZeinNumer. https://github.com/gzeinnumer");
}
}publicclassNotificationHelper {
privateContextmContext;
privateNotificationManagermNotificationManager;
privateNotificationCompat.BuildermBuilder;
publicstaticfinalStringNOTIFICATION_CHANNEL_ID = "10001";
publicNotificationHelper(Contextcontext) {
mContext = context;
}
publicvoidcreateNotification(Stringtitle, Stringmessage) {
IntentresultIntent = newIntent(mContext, MainActivity.class);
resultIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntentresultPendingIntent = PendingIntent.getActivity(mContext,
0/* Request code */, resultIntent,
PendingIntent.FLAG_UPDATE_CURRENT);
mBuilder = newNotificationCompat.Builder(mContext);
mBuilder.setSmallIcon(R.mipmap.ic_launcher);
mBuilder.setContentTitle(title)
.setContentText(message)
.setAutoCancel(false)
.setSound(Settings.System.DEFAULT_NOTIFICATION_URI)
.setContentIntent(resultPendingIntent);
mNotificationManager = (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
intimportance = NotificationManager.IMPORTANCE_HIGH;
NotificationChannelnotificationChannel = newNotificationChannel(NOTIFICATION_CHANNEL_ID, "NOTIFICATION_CHANNEL_NAME", importance);
notificationChannel.enableLights(true);
notificationChannel.setLightColor(Color.RED);
notificationChannel.enableVibration(true);
notificationChannel.setVibrationPattern(newlong[]{100, 200, 300, 400, 500, 400, 300, 200, 400});
assertmNotificationManager != null;
mBuilder.setChannelId(NOTIFICATION_CHANNEL_ID);
mNotificationManager.createNotificationChannel(notificationChannel);
}
assertmNotificationManager != null;
mNotificationManager.notify(createRandomCode(7), mBuilder.build());
}
publicintcreateRandomCode(intcodeLength) {
char[] chars = "1234567890".toCharArray();
StringBuildersb = newStringBuilder();
Randomrandom = newSecureRandom();
for (inti = 0; i < codeLength; i++) {
charc = chars[random.nextInt(chars.length)];
sb.append(c);
}
returnInteger.parseInt(sb.toString());
}
}
Copyright 2020 M. Fadli Zein