Display IP Address and port of child device

Later, the parent will be able to use this information to pair
with the child device, as an alternative to using mDNS
This commit is contained in:
Branden Archer
2016-01-01 02:29:02 -05:00
parent fddb8ceede
commit 7cb2138d13
4 changed files with 72 additions and 1 deletions

View File

@@ -9,6 +9,7 @@
android:targetSdkVersion="17" />
<uses-permission android:required="true" android:name="android.permission.INTERNET"/>
<uses-permission android:required="true" android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:required="true" android:name="android.permission.ACCESS_WIFI_STATE"/>
<application
android:allowBackup="true"

View File

@@ -47,6 +47,44 @@
android:layout_width="match_parent"
android:layout_height="15dip" />
<TextView
android:id="@+id/addressTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/addressTitle"
android:textSize="20sp" />
<TextView
android:id="@+id/address"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=""
android:textSize="20sp"/>
<TextView
android:id="@+id/portTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/portTitle"
android:textSize="20sp" />
<TextView
android:id="@+id/port"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/loading"
android:textSize="20sp"/>
<TextView
android:id="@+id/addressDescription"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/addressDescription" />
<Space
android:layout_width="match_parent"
android:layout_height="15dip" />
<TextView
android:id="@+id/textStatus"
android:layout_width="wrap_content"

View File

@@ -20,5 +20,8 @@
<string name="connectedTo">Connected To:</string>
<string name="disconnected">Disconnected</string>
<string name="listening">Listening...</string>
<string name="addressTitle">Address:</string>
<string name="portTitle">Port:</string>
<string name="addressDescription">Address and port that parent must pair to</string>
<string name="wifiNotConnected">Not connected to a Wi-Fi network</string>
</resources>

View File

@@ -28,7 +28,10 @@ import android.media.AudioRecord;
import android.media.MediaRecorder;
import android.net.nsd.NsdManager;
import android.net.nsd.NsdServiceInfo;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.text.format.Formatter;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
@@ -163,6 +166,29 @@ public class MonitorActivity extends Activity
}
});
_serviceThread.start();
MonitorActivity.this.runOnUiThread(new Runnable()
{
@Override
public void run()
{
final TextView addressText = (TextView) findViewById(R.id.address);
final WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
final WifiInfo info = wifiManager.getConnectionInfo();
final int address = info.getIpAddress();
if(address != 0)
{
@SuppressWarnings("deprecation")
final String ipAddress = Formatter.formatIpAddress(address);
addressText.setText(ipAddress);
}
else
{
addressText.setText(R.string.wifiNotConnected);
}
}
});
}
@Override
@@ -229,6 +255,9 @@ public class MonitorActivity extends Activity
final TextView serviceText = (TextView) findViewById(R.id.textService);
serviceText.setText(serviceName);
final TextView portText = (TextView) findViewById(R.id.port);
portText.setText(Integer.toString(port));
}
});
}