嗨,这是我的助手类,我检查内部连接和xml对话并使用此类到另一个活动问题是当服务器连接工作正常但是当服务器没有响应或无效的输入代码是爆炸意外停止我发现asyntask解决这个是的但我的问题是我如何在此代码中使用AsyncTask?或如何显示吐司消息如果服务器没有响应错误消息连接错误aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa是在日志上显示但是没有在吐司上显示我该怎么做所以我的应用程序没有爆炸当服务器没有响应?任何的想法?
public class AgAppHelperMethods {
private static final String LOG_TAG = null;
private static AgAppHelperMethods instance = null;
public static String varMobileNo;
public static String varPinNo;
String[][] xmlRespone = null;
public static String getUrl() {
String url = "https://demo.accessgroup.mobi/";
return url;
}
public static String[][] AgAppXMLParser(String parUrl) {
String _node, _element;
String[][] xmlRespone = null;
try {
String url = AgAppHelperMethods.getUrl() + parUrl;
URL finalUrl = new URL(url);
DocumentBuilderFactory dbf =
DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse(new InputSource(finalUrl.openStream()));
doc.getDocumentElement().normalize();
NodeList list = doc.getElementsByTagName("*");
_node = new String();
_element = new String();
xmlRespone = new String[list.getLength()][2];
for (int i = 0; i < list.getLength(); i++) {
Node value = list.item(i).getChildNodes().item(0);
_node = list.item(i).getNodeName();
_element = value.getNodeValue();
xmlRespone[i][0] = _node;
xmlRespone[i][1] = _element;
} //end for
} //end try
catch (Exception e) {
// Toast.makeText(context, "error server not responding " +
e.getMessage(), Toast.LENGTH_LONG).show();
Log.e(LOG_TAG, "Connection Error aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
e);
// Do something else, if wanted.
}
return xmlRespone;
}
Run Code Online (Sandbox Code Playgroud)
创建一个全局变量,如:
Context mContext;
Run Code Online (Sandbox Code Playgroud)
然后在您的类中添加一个构造函数,您可以在其中接受Context参数并将其分配给mContext,如:
public AgAppHelperMethods(Context context) {
mContext = context;
}
Run Code Online (Sandbox Code Playgroud)
在Activity中创建一个对象,如:
AgAppHelperMethods helper = new AgAppHelperMethods(getBaseContext());
Run Code Online (Sandbox Code Playgroud)
最后,展示你的Toast使用:
Toast.makeText(mContext, "error server not responding " + e.getMessage(), Toast.LENGTH_LONG).show();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8660 次 |
| 最近记录: |