Skip to content

Instantly share code, notes, and snippets.

View ubarua123's full-sized avatar
🏠
Working from home

Udayaditya Barua ubarua123

🏠
Working from home
View GitHub Profile
@ubarua123
ubarua123 / WorkerKey.java
Created January 13, 2020 07:04
Worker Key Annotation
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@MapKey
public @interface WorkerKey {
Class<? extends RxWorker> value();
}
@ubarua123
ubarua123 / AddWorkerToWM.java
Last active January 14, 2020 06:09
Adding a work to WorkManager
public static final Constraints NETWORK_CONSTRAINT = new Constraints.Builder().setRequiredNetworkType(NetworkType.CONNECTED).build();
// Create a OneTimeWorkRequest using our worker; SampleWorker.class
OneTimeWorkRequest sampleWorkRequest = new OneTimeWorkRequest
.Builder(SampleWorker.class)
.setConstraints(NETWORK_CONSTRAINT)
.setBackoffCriteria(BackoffPolicy.LINEAR, OneTimeWorkRequest.DEFAULT_BACKOFF_DELAY_MILLIS, TimeUnit.MILLISECONDS)
.build();
// Enqueue
@ubarua123
ubarua123 / SampleWorker.java
Last active January 13, 2020 07:16
WorkManager worker class sample
public class SampleWorker extends RxWorker {
public SampleWorker(
@NonNull Context context,
@NonNull WorkerParameters parameters) {
super(context, parameters);
}
public Single<Result> createWork() {
// Create a single observer which will hit a url and nothing else.
@ubarua123
ubarua123 / NotificationHelper.java
Last active February 16, 2016 19:14
Helper class to create notifications
import android.annotation.TargetApi;
import android.app.Notification;
import android.app.NotificationManager;
import android.content.Context;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build;
import android.support.annotation.AttrRes;
import android.support.annotation.ColorInt;
import android.support.annotation.ColorRes;