Commit 9246b5f9 authored by Sajal Narang's avatar Sajal Narang

Temporarily disable notifications for Oreo

parent 95a5ead9
......@@ -3,6 +3,7 @@ package app.insti;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Build;
import android.os.Bundle;
import android.support.design.widget.NavigationView;
import android.support.v4.app.Fragment;
......@@ -97,7 +98,8 @@ public class MainActivity extends AppCompatActivity implements NavigationView.On
}
}
NotificationEventReceiver.setupAlarm(getApplicationContext());
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.O)
NotificationEventReceiver.setupAlarm(getApplicationContext());
}
private void handleIntent(Intent appLinkIntent) {
......
......@@ -2,7 +2,6 @@ package app.insti.notifications;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.support.v4.content.WakefulBroadcastReceiver;
......@@ -11,9 +10,8 @@ import android.util.Log;
import java.util.Calendar;
import java.util.Date;
import static android.support.v4.content.ContextCompat.startForegroundService;
public class NotificationEventReceiver extends BroadcastReceiver {
public class
NotificationEventReceiver extends WakefulBroadcastReceiver {
private static final String ACTION_START_NOTIFICATION_SERVICE = "ACTION_START_NOTIFICATION_SERVICE";
private static final String ACTION_DELETE_NOTIFICATION = "ACTION_DELETE_NOTIFICATION";
......@@ -59,7 +57,7 @@ public class NotificationEventReceiver extends BroadcastReceiver {
}
if (serviceIntent != null) {
startForegroundService(context, serviceIntent);
startWakefulService(context, serviceIntent);
}
}
}
\ No newline at end of file
......@@ -9,6 +9,7 @@ import android.content.Intent;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.support.v4.app.NotificationCompat;
import android.support.v4.content.WakefulBroadcastReceiver;
import android.util.Log;
import java.util.Date;
......@@ -41,12 +42,6 @@ public class NotificationIntentService extends IntentService {
super(NotificationIntentService.class.getSimpleName());
}
@Override
public void onCreate() {
super.onCreate();
startForeground(1, new Notification());
}
public static Intent createIntentStartNotificationService(Context context) {
Intent intent = new Intent(context, NotificationIntentService.class);
intent.setAction(ACTION_START);
......@@ -67,40 +62,44 @@ public class NotificationIntentService extends IntentService {
@Override
protected void onHandleIntent(Intent intent) {
Log.d(getClass().getSimpleName(), "onHandleIntent, started handling a notification event");
String action = intent.getAction();
if (ACTION_START.equals(action)) {
processStartNotification();
}
if (ACTION_DELETE.equals(action)) {
processDeleteNotification(intent);
}
if (ACTION_NOT_GOING.equals(action)) {
String eventID = intent.getStringExtra(Constants.EVENT_ID);
String sessionID = intent.getStringExtra(Constants.SESSION_ID);
try {
String action = intent.getAction();
if (ACTION_START.equals(action)) {
processStartNotification();
}
if (ACTION_DELETE.equals(action)) {
processDeleteNotification(intent);
}
if (ACTION_NOT_GOING.equals(action)) {
String eventID = intent.getStringExtra(Constants.EVENT_ID);
String sessionID = intent.getStringExtra(Constants.SESSION_ID);
RetrofitInterface retrofitInterface = ServiceGenerator.createService(RetrofitInterface.class);
retrofitInterface.updateUserEventStatus("sessionid=" + sessionID, eventID, Constants.STATUS_NOT_GOING).enqueue(new Callback<Void>() {
@Override
public void onResponse(Call<Void> call, Response<Void> response) {
RetrofitInterface retrofitInterface = ServiceGenerator.createService(RetrofitInterface.class);
retrofitInterface.updateUserEventStatus("sessionid=" + sessionID, eventID, Constants.STATUS_NOT_GOING).enqueue(new Callback<Void>() {
@Override
public void onResponse(Call<Void> call, Response<Void> response) {
}
}
@Override
public void onFailure(Call<Void> call, Throwable t) {
@Override
public void onFailure(Call<Void> call, Throwable t) {
}
});
manager = (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
manager.cancel(intent.getIntExtra("NOTIFICATION_ID", -1));
}
if (ACTION_NAVIGATE.equals(action)) {
manager = (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
manager.cancel(intent.getIntExtra("NOTIFICATION_ID", -1));
double latitude = intent.getDoubleExtra(Constants.EVENT_LATITUDE, 0);
double longitude = intent.getDoubleExtra(Constants.EVENT_LONGITUDE, 0);
Uri gmmIntentUri = Uri.parse("google.navigation:q=" + latitude + "," + longitude + "&mode=w");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
startActivity(mapIntent);
}
});
manager = (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
manager.cancel(intent.getIntExtra("NOTIFICATION_ID", -1));
}
if (ACTION_NAVIGATE.equals(action)) {
manager = (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
manager.cancel(intent.getIntExtra("NOTIFICATION_ID", -1));
double latitude = intent.getDoubleExtra(Constants.EVENT_LATITUDE, 0);
double longitude = intent.getDoubleExtra(Constants.EVENT_LONGITUDE, 0);
Uri gmmIntentUri = Uri.parse("google.navigation:q=" + latitude + "," + longitude + "&mode=w");
Intent mapIntent = new Intent(Intent.ACTION_VIEW, gmmIntentUri);
startActivity(mapIntent);
}
} finally {
WakefulBroadcastReceiver.completeWakefulIntent(intent);
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment