diff --git a/app/build.gradle b/app/build.gradle index 6d87b00..4ae3c09 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -8,7 +8,6 @@ findbugs { android { compileSdkVersion 25 - buildToolsVersion "25.0.2" defaultConfig { applicationId "protect.babymonitor" @@ -22,6 +21,10 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } } + + dependencies { + compile "com.android.support:support-compat:25.4.0" + } } task findbugs(type: FindBugs, dependsOn: 'assembleDebug') { diff --git a/app/src/main/java/protect/babymonitor/ListenActivity.java b/app/src/main/java/protect/babymonitor/ListenActivity.java index bc2539e..8243ac9 100644 --- a/app/src/main/java/protect/babymonitor/ListenActivity.java +++ b/app/src/main/java/protect/babymonitor/ListenActivity.java @@ -22,6 +22,7 @@ import java.net.Socket; import java.net.UnknownHostException; import android.app.Activity; +import android.content.Context; import android.media.AudioFormat; import android.media.AudioManager; import android.media.AudioTrack; @@ -29,6 +30,8 @@ import android.media.MediaPlayer; import android.os.Bundle; import android.util.Log; import android.widget.TextView; +import android.support.v4.app.NotificationCompat; +import android.support.v4.app.NotificationManagerCompat; public class ListenActivity extends Activity { @@ -37,6 +40,8 @@ public class ListenActivity extends Activity String _address; int _port; String _name; + Context _mParentContext = this; + NotificationManagerCompat _mNotifyMgr; Thread _listenThread; private void streamAudio(final Socket socket) throws IllegalArgumentException, IllegalStateException, IOException @@ -93,6 +98,9 @@ public class ListenActivity extends Activity _address = b.getString("address"); _port = b.getInt("port"); _name = b.getString("name"); + // Gets an instance of the NotificationManager service + _mNotifyMgr = + NotificationManagerCompat.from(_mParentContext); setContentView(R.layout.activity_listen); @@ -101,6 +109,17 @@ public class ListenActivity extends Activity @Override public void run() { + NotificationCompat.Builder mBuilder = + new NotificationCompat.Builder(_mParentContext) + .setSmallIcon(R.drawable.ic_launcher) + .setContentTitle("Baby Monitor Listener") + .setContentText("Listener is running"); + + + // Sets an ID for the notification + int mNotificationId = 1; + _mNotifyMgr.notify(mNotificationId, mBuilder.build()); + final TextView connectedText = (TextView) findViewById(R.id.connectedTo); connectedText.setText(_name); @@ -146,6 +165,14 @@ public class ListenActivity extends Activity final TextView statusText = (TextView) findViewById(R.id.textStatus); statusText.setText(R.string.disconnected); + NotificationCompat.Builder mBuilder = + new NotificationCompat.Builder(_mParentContext) + .setSmallIcon(R.drawable.ic_launcher) + .setContentTitle("Baby Monitor Listener") + .setContentText("Disconnected!"); + // Sets an ID for the notification + int mNotificationId = 1; + _mNotifyMgr.notify(mNotificationId, mBuilder.build()); } }); }