2014-02-11 41 views
-1

我已经创建了一个应用程序。它在Android 2.2上工作正常。当我使用API​​高于2.2的模拟器时,它运行正常,但有些下载代码未执行。它没有在SQLite中存储任何数据。不过,所有功能在Android 2.2上都能正常工作。是我的代码或模拟器上的错误?应用程序不能在2.2以外的模拟器上工作API级别

<uses-sdk 
    android:minSdkVersion="8" 
    android:targetSdkVersion="19" /> 

这是我的代码

helper=new DBHelper(this); 
    try 
    { 

    XMLParser parser = new XMLParser(); 
    String xml = parser.getXmlFromUrl(URL); // getting XML 
    Document doc = parser.getDomElement(xml); // getting DOM element 

    NodeList nl = doc.getElementsByTagName(KEY_TAG); 

    db=helper.getReadableDatabase(); 
    Cursor c=db.query(DBHelper.Old_Data, new String [] {DBHelper.Old_id,DBHelper.OLD_NUM}, DBHelper.Old_id+"=?",new String [] {1+""}, null, null, null); 
    if(c != null) 
    { 
     c.moveToFirst(); 
    } 
    String strIndex = c.getString(1); 
    int index = Integer.parseInt(strIndex); 
    c.close(); 

    i=0; 
    Log.d("Index , Length ",index + " , " + nl.getLength()); 
    for (i = index; i < nl.getLength(); i++) 
    { 
     Element e = (Element) nl.item(i); 

     ContentValues val = new ContentValues(); 
     val.put(DBHelper.TEST, parser.getValue(e, TEST)); 
     val.put(DBHelper.FILE, parser.getValue(e, FILE)); 
     val.put(DBHelper.TEST_NO, parser.getValue(e, TEST_NO)); 
     val.put(DBHelper.FILE_URL, parser.getValue(e, EXAM_URL)); 

     db=helper.getWritableDatabase(); 
     db.insert(DBHelper.EXAM_DATA, null, val); 
     db.close(); 
    } 
    if(i != index) 
    { 
     db=helper.getWritableDatabase(); 
     ContentValues values = new ContentValues(); 
     values.put(DBHelper.OLD_NUM, i); 
     db.update(DBHelper.Old_Data, values, DBHelper.Old_id+"=?", new String [] {1+""}); 
     db.close(); 
    } 
    else 
    { 
     Toast.makeText(UserProfile.this, "No Exam Available", Toast.LENGTH_LONG).show(); 
    } 
    } 
    catch (NullPointerException ne) 
    { 
     Toast.makeText(this, "NPE", Toast.LENGTH_LONG).show(); 
    } 
    catch (Exception e) 
    { 
     Toast.makeText(this, "E", Toast.LENGTH_LONG).show(); 
    } 
+0

您的数据你是什么意思“,其运行正常,但下载代码不执行“? – fiddler

+0

发布您的code.not得到你正在说的 –

+0

你能告诉我们一些相关的代码?在更高的API上运行时,logcat说什么? – 2014-02-11 06:17:09

回答

2

如果你做的工作有点像解析/下载数据使用asynctask.Download或分析中的AsyncTask doinbackground方法

+0

粘贴你的代码first.and在Android版本4.0及以上,你需要解析你的数据在asynctask –

+0

请参阅此 - http://developer.android.com/reference/android/os/AsyncTask.html –

+0

是的...把它放在asyntask doInBackground() –

相关问题