package cn.itcast.mobilesafe.engine;
import java.io.InputStream;
import org.xmlpull.v1.XmlPullParser;
import android.util.Xml;
import cn.itcast.mobilesafe.domain.UpdataInfo;
public class UpdataInfoParser {
/**
*
* @param is
* 解析的xml的inputstream 如果项目比较大 最好 把解析的数据 放到各自的解析器 用来专门把String等转为 需要的对象 供 service调用
* @return updateinfo
*/
public static UpdataInfo getUpdataInfo(InputStream is) throws Exception {
XmlPullParser parser = Xml.newPullParser();
UpdataInfo info = new UpdataInfo();
parser.setInput(is, "utf-8");
int type = parser.getEventType();
while (type != XmlPullParser.END_DOCUMENT) {
switch (type) {
case XmlPullParser.START_TAG:
if("version".equals(parser.getName())){
String version = parser.nextText();
info.setVersion(version);
}else if("description".equals(parser.getName())){
String description = parser.nextText();
info.setDescription(description);
}else if("apkurl".equals(parser.getName())){
String apkurl = parser.nextText();
info.setApkurl(apkurl);
}
break;
}
type = parser.next();
}
return info;
}
}