نمایش نتایج 1 تا 6 از 6

نام تاپیک: نمایش ناتیفیکیشن وقتی که برنامه بسته است !؟

  1. #1
    کاربر دائمی آواتار ghasem110deh
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    تهران
    پست
    1,148

    Question نمایش ناتیفیکیشن وقتی که برنامه بسته است !؟

    سلام به همه :-)
    دوستان چطور وقتی برنامه بسته است ، ناتیفیکیشن بفرستم ؟

    توی برنامه یه سری دیتا بر اساس تاریخ ذخیره شده، حالا میخوام توی سررسید اون تاریخ ناتیفیکیشن نمایش داده بشه (حتی اگه برنامه بسته باشه)
    بعد هم که با کلیک روی ناتیفیکیشن برنامه باز بشه (که این قسمت حل شده)

  2. #2
    کاربر دائمی آواتار ghasem110deh
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    تهران
    پست
    1,148

    نقل قول: نمایش ناتیفیکیشن وقتی که برنامه بسته است !؟

    این خطا رو چطوری رفع و رجوع کنم ؟ مشکل چیه !؟


    Process: ir.rahgoshafan.mahanmember, PID: 4049
    java.lang.RuntimeException: Unable to start activity ComponentInfo{ir.rahgoshafan.mahanmember/ir.rahgoshafan.mahanmember.MainActivity}: java.lang.IllegalArgumentException: Service Intent must be explicit: Intent { act=ir.rahgoshafan.mahanmember.NotiService }



    اینم کد : به این خط گیر میده
    this.startService(serviceIntent);
    package ir.rahgoshafan.mahanmember;

    import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;

    public class NotiService extends Service {
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
    return super.onStartCommand(intent, flags, startId);
    }

    @Override
    public void onDestroy() {
    super.onDestroy();
    }

    @Override
    public IBinder onBind(Intent intent) {
    return null;
    }
    }


    package ir.rahgoshafan.mahanmember;

    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;

    public class BootReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
    if ("android.intent.action.BOOT_COMPLETED".equals(int ent.getAction())) {
    Intent serviceIntent = new Intent("ir.rahgoshafan.mahanmember.NotiService");
    context.startService(serviceIntent);
    }
    }
    }


    اینم توی اکتیویتی که قراره ناتیفیکیشن رو ارسال کنه :
    private boolean isMyServiceRunning() {
    ActivityManager manager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
    for (ActivityManager.RunningServiceInfo service : manager.getRunningServices(Integer.MAX_VALUE)) {
    if (NotiService.class.getName().equals(service.servic e.getClassName())) {
    return true;
    }
    }
    return false;
    }


    اینم توی onCreate

    if (!isMyServiceRunning()) {
    Intent serviceIntent = new Intent("ir.rahgoshafan.mahanmember.NotiService");
    this.startService(serviceIntent);
    }

  3. #3

    نقل قول: نمایش ناتیفیکیشن وقتی که برنامه بسته است !؟

    Intent شما برای اجرای سرویس باید صریح باشه یعنی این شکلی:
    new Intent(context, NotiService.class)

  4. #4
    کاربر دائمی آواتار ghasem110deh
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    تهران
    پست
    1,148

    نقل قول: نمایش ناتیفیکیشن وقتی که برنامه بسته است !؟

    دوستان اون قبلی جواب نداد : اما این کد پایین پیغام رو میفرسته ولی باید برنامه باز باشه !!!


    public class MyAlarmService extends Service {

    @Override
    public IBinder onBind(Intent arg0) {
    return null;
    }

    @Override
    public void onCreate() {
    super.onCreate();
    }

    @SuppressWarnings({"static-access", "deprecation"})
    @Override
    public void onStart(Intent intent, int startId) {
    super.onStart(intent, startId);
    intent = new Intent(this, MainActivity.class);
    PendingIntent pIntent = PendingIntent.getActivity(this, (int) System.currentTimeMillis(), intent, 0);
    Notification notification = new Notification.Builder(this).setContentTitle("سال گرد خاطره")
    .setContentText("امروز سالگرد" + " 1 " + "خاطره ثبت شده می باشد").setSmallIcon(R.mipmap.ic_launcher).setC ontentIntent(pIntent).build();
    NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
    notification.flags |= Notification.FLAG_AUTO_CANCEL;
    notificationManager.notify(0, notification);
    }

    @Override
    public void onDestroy() {
    super.onDestroy();
    }
    }



    public class MyReceiver extends BroadcastReceiver
    {
    @Override
    public void onReceive(Context context, Intent intent)
    {
    Intent service1 = new Intent(context, MyAlarmService.class);
    context.startService(service1);
    }


    و اینم توی اکتیویتی اصلی :

    if (remember > 0) {
    Calendar calendar = Calendar.getInstance();
    calendar.set(Calendar.HOUR_OF_DAY, 19);
    calendar.set(Calendar.MINUTE, 40);
    calendar.set(Calendar.SECOND, 30);
    Intent myIntent = new Intent(MainActivity.this, MyReceiver.class);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, 0, myIntent, 0);
    AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pendingIntent);
    }

  5. #5

    نقل قول: نمایش ناتیفیکیشن وقتی که برنامه بسته است !؟

    من زیاد سروکله نزدم با notif، شاید دوستان تجربه بیشتری داشته باشن، ولی اینو جستجو کنید تو جوابایی که دادن یه سری نکات میشه پیدا کرد:
    android service persistent notification


    بعدم سعی کنید جایگزین اون کدهای منسوخ شده رو پیدا کنید و از اونا استفاده کنید. الان به راهنمای notif توی مستندات نگاه میکنم خیلی جامع توضیح داده شده.

  6. #6
    کاربر دائمی آواتار ghasem110deh
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    تهران
    پست
    1,148

    نقل قول: نمایش ناتیفیکیشن وقتی که برنامه بسته است !؟

    الان مشکل ارسال هم تقریبا حل شد ... منتها یه شرط گذاشتم "if (remember > 0) {

    "

    که اگه بیشتر از صفر بود پیام ارسال بشه وو ولی اگه صفر هم باشه میفرسته ! شرط مشکل داره !؟ یا چون آلرت هست زیاد شرط رو جدی نمیگیره :-)

تاپیک های مشابه

  1. حرفه ای: خارج شدن از برنامه به صورت اتوماتیک وقتی که برنامه غیرفعال است
    نوشته شده توسط EBRAHIMIEKOKDARAGHI در بخش C#‎‎
    پاسخ: 1
    آخرین پست: جمعه 16 بهمن 1394, 21:31 عصر
  2. نمایش flash ای که بصورت exe است
    نوشته شده توسط shahzamanian در بخش C#‎‎
    پاسخ: 5
    آخرین پست: دوشنبه 09 شهریور 1394, 11:29 صبح
  3. اجرای یک کد وقتی که برنامه بسته ست
    نوشته شده توسط likemoon در بخش VB.NET
    پاسخ: 1
    آخرین پست: سه شنبه 02 دی 1393, 18:47 عصر
  4. پاسخ: 8
    آخرین پست: یک شنبه 06 بهمن 1392, 18:57 عصر
  5. پاسخ: 15
    آخرین پست: پنج شنبه 03 بهمن 1392, 21:53 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •