public class MainA extends Activity {
WifiManager wifi=(WifiManager)getSystemService(Context.WIFI_SERVICE);
WifiInfo info=wifi.getConnectionInfo();
String ip;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bt=(Button)findViewById(R.id.b1);
try{
InetAddress ownIP=InetAddress.getLocalHost();
ip=ownIP.getHostAddress();
//System.out.println("IP of my Android := "+ownIP.getHostAddress());
}catch (Exception e){
//System.out.println("Exception caught ="+e.getMessage());
}
bt.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
// TODO Auto-generated method stub
TextView tv1=(TextView)findViewById(R.id.tv1);
tv1.setText(ip);
}
});
}
}
它会停止对话框,我应该使用其他方法还是其他任何方式使用它。我使用了try-catch的getHostAddress(),但是当我运行它时它只是不运行这有什么问题?
答案 0 :(得分:0)
我的猜测是,你正试图获取你的环回地址的主机并抛出一个Exception
,因为它没有被解析到任何主机。您可能正在捕捉Exception
,但由于您没有内部代码,您认为没有任何事情发生。
顺便说一下:捕获所有异常是一种不好的做法,因为您可能正在捕获try
块不期望的异常。您可以在here上阅读更多内容。