我创建了一个需要使用登录的android应用程序。为此,我必须解析 xml 以进行登录。我在登录按钮下编写了以下代码。
loginButton.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
getInput();
parserMethod=new ParserMethod();
login=parserMethod.parseLoginStatus(userName,password,mobileNo,code);
if(login.getLoginStatus().equals("Sucess.."))
{
i=new Intent();
i.setClass(LoginActivity.this, MainActivity.class);
startActivity(i);
}
}
});
public Login parseLoginStatus(String userName, String password,String mobileNo, String code)
{
String sourceString="http://www.example.info/mobapp/Web_service/checkLogin.php?userId=robin&password=123456&mobile=0&code=8080&output=xml";
loadParseData(sourceString);
return MyXMLHandler.login;
}
private void loadParseData(String sourceString)
{
try
{
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
XMLReader xr = sp.getXMLReader();
URL sourceUrl=new URL(sourceString);
MyXMLHandler myXMLHandler = new MyXMLHandler();
xr.setContentHandler(myXMLHandler);
xr.parse(new InputSource(sourceUrl.openStream()));
}
catch(Exception e)
{
System.out.println("XML Pasing Excpetion = " + e);
}
}
但问题是当网络不可用或 xml 不可用时,应用程序就会崩溃。我该如何解决这个问题。提前致谢。