Хотите открыть диспетчер уведомлений, когда служба выполняется в фоновом режиме - PullRequest
0 голосов
/ 25 июня 2018

Я планирую задачу в определенное время, поэтому всякий раз, когда в фоновом режиме выполняется эта служба приложения, я хочу получать ответное сообщение сервера в диспетчере уведомлений.

     JSONObject json = jsonParser.makeHttpRequest(HttpURLout, "POST", params);

        // check log cat fro response
        Log.d("Create Response", json.toString());

Сообщение журнала кошки.

E / Create Response: {"success": 1, "message": "Office IN Marked THANKU!"}

Я хочу, чтобы это сообщение в Диспетчере уведомлений постоянно обновлялось о том, что служба выполняется.

Ответы [ 2 ]

0 голосов
/ 25 июня 2018
String CHANEL_ID = "Chanel_Id";
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, CHANEL_ID)
            .setContentTitle("Demo")
            .setSmallIcon(R.drawable.ic_notification_icon)
            .setContentText(json.optString("message"))
            .setOngoing(true);
Intent intent = new Intent(context, MainActivity.class);
    PendingIntent pIntent = PendingIntent.getActivity(context, STATUS_ICON_REQUEST_CODE, intent, 0);
    builder.setContentIntent(pIntent);
    NotificationManager mNotificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
    Notification notif = builder.build();
    notif.flags |= Notification.FLAG_ONGOING_EVENT;
    mNotificationManager.notify(STATUS_ICON_REQUEST_CODE, notif);
0 голосов
/ 25 июня 2018
String CHANNEL_ID = "channel_id";
        NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this, CHANNEL_ID)
                .setSmallIcon(R.drawable.notification_icon)
                .setColor(ContextCompat.getColor(getApplicationContext(), R.color.notification_color))
                .setContentTitle("title")
                .setContentText(json.optString("message"))//your response string here

        NotificationManager mNotificationManager =
                (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
            mNotificationManager.createNotificationChannel(new NotificationChannel(CHANNEL_ID,"Channel name",NotificationManager.IMPORTANCE_DEFAULT));
        }

        mNotificationManager.notify(1, mBuilder.build());
...