@SuppressWarnings("unused")
    public static void createNotificationChannel(final Context context, final String channelId, final CharSequence channelName, final String channelDescription, final int importance, final boolean showBadge) {
        final CleverTapAPI instance = getDefaultInstanceOrFirstOther(context);
        if (instance == null) {
            Logger.v("No CleverTap Instance found in CleverTapAPI#createNotificatonChannel");
            return;
        }
        try {
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
                instance.postAsyncSafely("createNotificationChannel", new Runnable() {
                    @RequiresApi(api = Build.VERSION_CODES.O)
                    @Override
                    public void run() {

                        NotificationManager notificationManager = (NotificationManager) context.getSystemService(NOTIFICATION_SERVICE);
                        if (notificationManager == null) return;
                        NotificationChannel notificationChannel = new NotificationChannel(channelId, channelName, importance);
                        notificationChannel.setDescription(channelDescription);
                        notificationChannel.setShowBadge(showBadge);
                        notificationManager.createNotificationChannel(notificationChannel);
                        instance.getConfigLogger().info(instance.getAccountId(),"Notification channel " + channelName.toString() + " has been created");

                    }
                });
            }
        } catch (Throwable t){
            instance.getConfigLogger().verbose(instance.getAccountId(),"Failure creating Notification Channel", t);
        }

    }
@ SuppressWarnings ( "unused" ) public static void createNotificationChannel ( final Context context , final String channelId , final CharSequence channelName , final String channelDescription , final int importance , final boolean showBadge ) { final CleverTapAPI instance = getDefaultInstanceOrFirstOther ( context ) ; if ( instance == null ) { Logger . v ( "No CleverTap Instance found in CleverTapAPI#createNotificatonChannel" ) ; return ; } try { if ( Build . VERSION . SDK_INT >= Build . VERSION_CODES . O ) { instance . postAsyncSafely ( "createNotificationChannel" , new Runnable ( ) { @ RequiresApi ( api = Build . VERSION_CODES . O ) @ Override public void run ( ) { NotificationManager notificationManager = ( NotificationManager ) context . getSystemService ( NOTIFICATION_SERVICE ) ; if ( notificationManager == null ) return ; NotificationChannel notificationChannel = new NotificationChannel ( channelId , channelName , importance ) ; notificationChannel . setDescription ( channelDescription ) ; notificationChannel . setShowBadge ( showBadge ) ; notificationManager . createNotificationChannel ( notificationChannel ) ; instance . getConfigLogger ( ) . info ( instance . getAccountId ( ) , "Notification channel " + channelName . toString ( ) + " has been created" ) ; } } ) ; } } catch ( Throwable t ) { instance . getConfigLogger ( ) . verbose ( instance . getAccountId ( ) , "Failure creating Notification Channel" , t ) ; } }
Launches an asynchronous task to create the notification channel from CleverTap
<p/>
Use this method when implementing your own FCM/GCM handling mechanism. Refer to the
SDK documentation for usage scenarios and examples.

@param context A reference to an Android context
@param channelId A String for setting the id of the notification channel
@param channelName  A String for setting the name of the notification channel
@param channelDescription A String for setting the description of the notification channel
@param importance An Integer value setting the importance of the notifications sent in this channel
@param showBadge An boolean value as to whether this channel shows a badge