SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

java.lang.IllegalStateException:não foi possível ler a linha 0, col -1 de CursorWindow - problema de sqlite do Android


A terceira linha é o problema. Veja sua saída do logcat e as fontes do Android (pesquise nas fontes por "solicitando o nome da coluna com o nome da tabela"). Agora dê uma olhada na sua saída do logcat. A linha com esta frase contém o nome da coluna que você está solicitando:/mnt/sdcard/googleCheckout/Saxo Trader.apk . Este valor vem do seu cursor de resultado. Claro que seu db não contém esta coluna :-)

Substitua as linhas
     String url = c.getString(c.getColumnIndex(c.getString(0)));
     String code = c.getString(c.getColumnIndex(c.getString(1)));

com
     String url = c.getString(c.getColumnIndex("reco_index_user_action_download_file"));
     String code = c.getString(c.getColumnIndex("reco_index_content_code"));

Também sugiro puxar o código para obter os índices de dentro do loop para fora do loop. Não há necessidade de pedir os índices repetidamente.