کلیدستان

نسخه‌ی کامل: ساخت نوتیفیکیشن (notification) غیرقابل اشاره و غیرقابل حذف (در برنامه نویسی اندروید)
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام
من کلید http://www.kelidestan.com/keys/keys.php?key=2611 رو خوندم و انجام دادم و درست کار داد ولی یه مشکلی دارم.توی کد ها جایی هست که گفتیم وقتی روی نوتیفیکیشن کلیک شد نوتیفیکیشن بره و یه قابلیت دیگه هم توی این کد ها هست که میگه اگه کاربر نوتیفیکیشن رو به سمت بیرون بکشه نوتیفیکیشن از نوتیفیکیشن بار بیرون بره. اما من می خوام که تا کاربر روی اون کلیک نکنه قابلیت بیرون کشیدن اون از نوتیفیکیشن بار وجود نداشته باشه. به عبارتی دیگه می خوام کاربر مجبور باشه روی اون کلیک کنه و وقتی روی اون کلیک کرد از استاتوس بار بیرون بره.
اگه خوب توضیح ندادم بگید کامل توضیح بدم
از کسایی که کمک می کنن پیش از پیش تشکر می کنم
سلام.
ابتدا کدهای notification ذکر شده در آن مبحث را اینجا می نویسم :

کد پی‌اچ‌پی:
NotificationCompat.Builder mBuilder =   new NotificationCompat.Builder(this)
    .
setSmallIcon(R.drawable.ic_launcher// notification icon
    
.setContentTitle("Notification!"// title for notification
    
.setContentText("kelidestan.com"// message for notification
    
.setAutoCancel(true); // clear notification after click
Intent intent = new Intent(thisMainActivity.class);
PendingIntent pi PendingIntent.getActivity(this,0,intent,Intent.FLAG_ACTIVITY_NEW_TASK);
mBuilder.setContentIntent(pi);
NotificationManager mNotificationManager =
                (
NotificationManagergetSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(0mBuilder.build()); 


1- برای اینکه بعد از اشاره روی notification ، به برنامه اندروید نرود (هیچ اتفاقی نیفتد)، باید سه خط زیر از بین کدها حذف شود (این سه خط کد برای تعیین رفتن به برنامه اندروید، بعد از اشاره می باشد) :

کد پی‌اچ‌پی:
Intent intent = new Intent(thisMainActivity.class);
PendingIntent pi PendingIntent.getActivity(this,0,intent,Intent.FLAG_ACTIVITY_NEW_TASK);
mBuilder.setContentIntent(pi); 

2- برای عدم قابل حذف بودن notification ، باید آن را در بخش Ongoing نمایش بدهیم. برای این منظور، باید خط زیر به کدها افزوده شود :

کد پی‌اچ‌پی:
mBuilder.setOngoing(true); 

یعنی کدها به صورت زیر خواهد بود :

کد پی‌اچ‌پی:
NotificationCompat.Builder mBuilder =   new NotificationCompat.Builder(this)
    .
setSmallIcon(R.drawable.ic_launcher// notification icon
    
.setContentTitle("Notification!"// title for notification
    
.setContentText("kelidestan.com"// message for notification
    
.setAutoCancel(true); // clear notification after click
NotificationManager mNotificationManager =
                (
NotificationManagergetSystemService(Context.NOTIFICATION_SERVICE);
mBuilder.setOngoing(true);
mNotificationManager.notify(0mBuilder.build());