// This must run asynchronously because it involves a network request. `String` declares the parameters. `Void` does not declare progress units. `SpannableStringBuilder` contains the results.
private static class GetIpAddresses extends AsyncTask<String, Void, SpannableStringBuilder> {
// The weak references are used to determine if the activity or the alert dialog have disappeared while the AsyncTask is running.
// This must run asynchronously because it involves a network request. `String` declares the parameters. `Void` does not declare progress units. `SpannableStringBuilder` contains the results.
private static class GetIpAddresses extends AsyncTask<String, Void, SpannableStringBuilder> {
// The weak references are used to determine if the activity or the alert dialog have disappeared while the AsyncTask is running.