diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 24a3d0c7e481045f4227b402d12891c487031c85..c793a280fba0634cab021582a027ffd8d3aba9d2 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -23,12 +23,6 @@
         <activity android:name=".A3" />
         <activity android:name=".A2"/>
 
-        <receiver android:name=".A1$taskDoneReceiver">
-            <intent-filter>
-                <action android:name="Task_Done_Listener" />
-            </intent-filter>
-        </receiver>
-
         <receiver android:name=".AlarmReceiver">
             <intent-filter>
                 <action android:name="ACTION_ALARM_RECEIVER" />
@@ -36,7 +30,7 @@
         </receiver>
 
         <service android:name=".BackgroundThread"
-            android:exported="false"
+            android:exported="true"
             android:enabled="true"/>
     </application>
 
diff --git a/app/src/main/java/com/example/zohaibbutt/lab02/A1.java b/app/src/main/java/com/example/zohaibbutt/lab02/A1.java
index 1602068615b250120bdbae9212c64c0eef0dc0aa..763adce53194a34cc6fe8a25bdd00612cd9441c9 100644
--- a/app/src/main/java/com/example/zohaibbutt/lab02/A1.java
+++ b/app/src/main/java/com/example/zohaibbutt/lab02/A1.java
@@ -100,10 +100,10 @@ public class A1 extends AppCompatActivity {
                 startActivityForResult(intent, GET_RESULT);
             } else { // else url is specified and Rss feeds can be fetched
                 Intent i = new Intent(this, BackgroundThread.class);
-                i.putStringArrayListExtra(TAG_TITLE_LIST, titles);
+              /*  i.putStringArrayListExtra(TAG_TITLE_LIST, titles);
                 i.putStringArrayListExtra(TAG_LINKS_LIST, links);
                 i.putStringArrayListExtra(TAG_DESC_LIST, description);
-                i.putExtra(FREQ_VAL, freq);
+                i.putExtra(FREQ_VAL, freq); */
                 startService(i);
                 Log.i("Service_running", "service is running!!");
             }
@@ -190,10 +190,10 @@ public class A1 extends AppCompatActivity {
         }// else {     // else start the service to fetch RSS
 
             Intent i = new Intent(this, BackgroundThread.class);
-            i.putStringArrayListExtra(TAG_TITLE_LIST, titles);
+         /*   i.putStringArrayListExtra(TAG_TITLE_LIST, titles);
             i.putStringArrayListExtra(TAG_LINKS_LIST, links);
             i.putStringArrayListExtra(TAG_DESC_LIST, description);
-            i.putExtra(FREQ_VAL, freq);
+            i.putExtra(FREQ_VAL, freq); */
             startService(i);
             Log.i("Service_running", "service is running!!");
     //    }
diff --git a/app/src/main/java/com/example/zohaibbutt/lab02/AlarmReceiver.java b/app/src/main/java/com/example/zohaibbutt/lab02/AlarmReceiver.java
index e42da0718c89c3962b8625c93bc53fd950d274ed..81309e354498e01b21a58ee497e4b63a26b4067f 100644
--- a/app/src/main/java/com/example/zohaibbutt/lab02/AlarmReceiver.java
+++ b/app/src/main/java/com/example/zohaibbutt/lab02/AlarmReceiver.java
@@ -4,6 +4,7 @@ package com.example.zohaibbutt.lab02;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.os.AsyncTask;
 import android.util.Log;
 
@@ -19,22 +20,30 @@ import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.ArrayList;
 
+import static com.example.zohaibbutt.lab02.A1.SETTING_VAL;
 import static com.example.zohaibbutt.lab02.A1.TAG_DESC_LIST;
 import static com.example.zohaibbutt.lab02.A1.TAG_LINKS_LIST;
 import static com.example.zohaibbutt.lab02.A1.TAG_TITLE_LIST;
-import static com.example.zohaibbutt.lab02.A1.requestURL;
+import static com.example.zohaibbutt.lab02.A1.URL_VAL;
 import static com.example.zohaibbutt.lab02.BackgroundThread.ACTION_ALARM_RECEIVER;
 import static com.example.zohaibbutt.lab02.BackgroundThread.db;
-import static com.example.zohaibbutt.lab02.BackgroundThread.dsc;
-import static com.example.zohaibbutt.lab02.BackgroundThread.lnk;
-import static com.example.zohaibbutt.lab02.BackgroundThread.ttl;
+
 
 public class AlarmReceiver extends BroadcastReceiver {
+    public ArrayList<String> ttl = new ArrayList<>();
+    public ArrayList<String> lnk = new ArrayList<>();
+    public ArrayList<String> dsc = new ArrayList<>();
+    private SharedPreferences settings;
+    private String requestURL = null;
+
     @Override
     public void onReceive(Context arg0, Intent arg1) {
         if (arg1 != null) {
             if (ACTION_ALARM_RECEIVER.equals(arg1.getAction())) {
                 Log.i("Alarm_Receiver", "in OnReceive!!");
+                db = new DBHandler(arg0, null, null, 1);
+                this.settings = arg0.getSharedPreferences(SETTING_VAL, Context.MODE_PRIVATE);
+                requestURL = settings.getString(URL_VAL, "");
 
                 // empty array lists
                 if (ttl != null && lnk != null && dsc != null) {
@@ -42,6 +51,8 @@ public class AlarmReceiver extends BroadcastReceiver {
                     ttl.clear();
                     lnk.clear();
                     dsc.clear();
+                } else {
+                    Log.i("Lists_NULL", "lists are null");
                 }
 
                 // Set the alarm here.
@@ -54,9 +65,6 @@ public class AlarmReceiver extends BroadcastReceiver {
 
                             Intent i = new Intent();
                             i.putExtra("TAG_VALUE", 20);
-
-
-
                             i.putStringArrayListExtra(TAG_TITLE_LIST, ttl);
                             i.putStringArrayListExtra(TAG_LINKS_LIST, lnk);
                             i.putStringArrayListExtra(TAG_DESC_LIST, dsc);
@@ -114,6 +122,7 @@ public class AlarmReceiver extends BroadcastReceiver {
         @Override
         protected final Exception doInBackground(ArrayList<String>... lists) {
             try {
+                 Log.i("URL_RESQUEST", ""+requestURL);
                 URL url = new URL(requestURL);
 
                 XmlPullParserFactory fact = XmlPullParserFactory.newInstance();
@@ -177,6 +186,7 @@ public class AlarmReceiver extends BroadcastReceiver {
                 }
             } catch (MalformedURLException e) {
                 exception = e;
+                e.printStackTrace();
                 Log.e("MALFORMED_URL_EXCEPTION", e.toString());
             } catch (IOException e) {
                 exception = e;
diff --git a/app/src/main/java/com/example/zohaibbutt/lab02/BackgroundThread.java b/app/src/main/java/com/example/zohaibbutt/lab02/BackgroundThread.java
index 306a109ae64b96e89e206a63ab51d065d7576163..1f620780da0706acdb7e8025f73708b273d3e07c 100644
--- a/app/src/main/java/com/example/zohaibbutt/lab02/BackgroundThread.java
+++ b/app/src/main/java/com/example/zohaibbutt/lab02/BackgroundThread.java
@@ -5,15 +5,19 @@ import android.app.PendingIntent;
 import android.app.Service;
 import android.content.Context;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.os.IBinder;
 import android.util.Log;
 
 import java.util.ArrayList;
 
 import static com.example.zohaibbutt.lab02.A1.FREQ_VAL;
+import static com.example.zohaibbutt.lab02.A1.LIMIT_VAL;
+import static com.example.zohaibbutt.lab02.A1.SETTING_VAL;
 import static com.example.zohaibbutt.lab02.A1.TAG_DESC_LIST;
 import static com.example.zohaibbutt.lab02.A1.TAG_LINKS_LIST;
 import static com.example.zohaibbutt.lab02.A1.TAG_TITLE_LIST;
+import static com.example.zohaibbutt.lab02.A1.URL_VAL;
 
 
 // Service that send broadcast to alarm receiver at the specified interval.
@@ -26,16 +30,21 @@ public class BackgroundThread extends Service {
     private AlarmManager alarmManager;
     private PendingIntent alarmIntent;
     public static final String ACTION_ALARM_RECEIVER = "ACTION_ALARM_RECEIVER";
+    private SharedPreferences settings;
 
     @Override
     public int onStartCommand(Intent intent, int flags, int startId) {
         // get all the data from intent
-        lnk = intent.getStringArrayListExtra(TAG_LINKS_LIST);
+      /*  lnk = intent.getStringArrayListExtra(TAG_LINKS_LIST);
         ttl = intent.getStringArrayListExtra(TAG_TITLE_LIST);
         dsc = intent.getStringArrayListExtra(TAG_DESC_LIST);
-        frq = intent.getIntExtra(FREQ_VAL, 0);
+        frq = intent.getIntExtra(FREQ_VAL, 0);*/
+
+        // Shared Preferences
+        this.settings = getSharedPreferences(SETTING_VAL, Context.MODE_PRIVATE);
+        // Get the shared preferences
+        this.frq = settings.getInt(FREQ_VAL, 0);
 
-        db = new DBHandler(this, null, null, 1);
 
         Log.i("Service_onStartCommand", "Service is onStartCommand!!");
 
@@ -48,7 +57,7 @@ public class BackgroundThread extends Service {
 
             this.alarmIntent = PendingIntent.getBroadcast(this, 0, i, 0);
 
-            alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
+            alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 500,
                     1000 * 60 * frq, alarmIntent);
 
             Log.i("Alarm_set", "Alarm set!");