我正在开发一个Android应用程序,它会在点击按钮后ping一个IP地址。
我有两节课。 Button的活动和ping类。单击按钮,我将IP变量设置为" 8.8.8.8",然后将其传递给我的ping类中的pingIP方法。按下按钮后我的应用程序崩溃了。使用调试器后,我可以看到我的IP变量仍然是" 8.8.8.8"直到我进入ping类,其中变量设置为null。
///This is my onClick action for the button presspublic void onClick(View v) @Override
public void onClick(View v) {
IP = "8.8.8.8";
pingout = new ping(); ///Creating new ping instance
pingout.pingIP(IP); //passing the pingIP method the IP variable
}
这是我的ping课程:
public class ping {
public void pingIP (String ip) { <- this value is null after the
function is called in the button class.
InetAddress adr = null;
try {
adr = InetAddress.getByName(ip);
} catch (UnknownHostException e) {
e.printStackTrace();
}
try {
System.out.println("Reachable Host: " + " " + ip + " " + adr.isReachable(3000));
} catch (IOException e) {
e.printStackTrace();
}
boolean status = false;
try {
status = adr.isReachable(3000);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("Reachable Host:" + " " + ip + " " + status);
}
}
ping类是我的项目包的一部分。我应该将该类声明为按钮所在类的扩展吗?