Friday, December 8, 2017

Android Notification

package com.example.tamzid.notification;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.support.v4.app.NotificationCompat;
import android.support.v4.app.TaskStackBuilder;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    Button normal_notification;

    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        normal_notification = (Button) findViewById(R.id.normal_notification);

        normal_notification.setOnClickListener(new View.OnClickListener() {
            @Override            public void onClick(View view) {

                // build the content of notification
                NotificationCompat.Builder builder = new NotificationCompat.Builder(getApplicationContext());
                builder.setContentTitle("Normal Notification");
                builder.setContentText("This a normal notification");
                builder.setTicker("This is a ticker");
                builder.setSmallIcon(R.mipmap.settings);
                //builder.setSound()                builder.setAutoCancel(true);

                // intent                Intent i = new Intent(MainActivity.this, Acitvity_B.class);

                // COVERT   the intent to pending intent
                TaskStackBuilder stackBuilder = TaskStackBuilder.create(getApplicationContext());
                stackBuilder.addParentStack(Acitvity_B.class);
                stackBuilder.addNextIntent(i);
                PendingIntent pi_main = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);

                builder.setContentIntent( pi_main);

                //notification button
                Intent setting = new Intent(MainActivity.this, Acitvity_B.class);

                TaskStackBuilder stackBuilder_setting = TaskStackBuilder.create(getApplicationContext());
                stackBuilder_setting.addParentStack(Acitvity_B.class);
                stackBuilder_setting.addNextIntent(setting);
                PendingIntent pi_setting = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);

                //notification button setter                builder.addAction(R.mipmap.settings,"setting", pi_setting);
                builder.addAction(R.mipmap.ic_launcher, "help", pi_main);
                builder.setAutoCancel(true);



                // notification through notification manager
                Notification notification = builder.build();
                NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
                notificationManager.notify(1234, notification);


            }
        });
    }

}

No comments:

Post a Comment

Speedup Android Studio

Go to Help ->Edit Custom VM Options, and chnge this 4 setting. After that close your Android Studio. This settings are for 8gb of ram pc...