2 * ownCloud Android client application
4 * Copyright (C) 2015 ownCloud Inc.
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2,
8 * as published by the Free Software Foundation.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
20 package com
.owncloud
.android
.notifications
;
22 import java
.util
.Random
;
24 import android
.app
.NotificationManager
;
25 import android
.os
.Handler
;
26 import android
.os
.HandlerThread
;
27 import android
.os
.Process
;
29 public class NotificationDelayer
{
31 public static void cancelWithDelay(
32 final NotificationManager notificationManager
,
33 final int notificationId
,
36 HandlerThread thread
= new HandlerThread(
37 "NotificationDelayerThread_" + (new Random(System
.currentTimeMillis())).nextInt(),
38 Process
.THREAD_PRIORITY_BACKGROUND
);
41 Handler handler
= new Handler(thread
.getLooper());
42 handler
.postDelayed(new Runnable() {
44 notificationManager
.cancel(notificationId
);
45 ((HandlerThread
)Thread
.currentThread()).getLooper().quit();