android - Parsing JSON from url with exception: Error parsing data org.json.JSONException: Unterminated array at character 115 -


i'm parsing url , i've got exception , don't know how skip over... need names of 100 popular apps. there key "im:name" , inside of key "lebel", see invalid jsonarray, need find way names key "im:name"... has smb ideas how can fix this?

this asynctask.class

    public class asynctaskparsejson extends asynctask<string, string, string> {      string jsonstringurl = "https://itunes.apple.com/br/rss/topfreeapplications/limit=100/json";     jsonarray datajsonarr = null;      @override     protected void onpreexecute() {}      @override     protected string doinbackground(string... arg0) {          try {             // instantiate our json parser             jsonparser jparser = new jsonparser();             // json string url             jsonobject json = jparser.getjsonfromurl(jsonstringurl);             // array of users //here need change             datajsonarr = json.getjsonarray("feed"); // wrong             // loop through users             (int = 0; < datajsonarr.length(); i++) {                 jsonobject c = datajsonarr.getjsonobject(i);                 // storing each json item in variable                 string name = c.getstring("im:name");//probably wrong             }         } catch (jsonexception e) {             e.printstacktrace();         }         return null;     } } 

and log

    09-10 20:04:03.013  18211-18241/com.yuretsrodik.top100apps e/jsonparser.java﹕ error parsing data org.json.jsonexception: unterminated array @ character 115 of {"feed":{"author":{"name":{"label":"itunes store"}, "uri":{"label":"http://www.apple.com/br/itunes/"}}, "entry":[n{"im:name":{"label":"messenger"}, "im:image":[n{"label":"http://a474.phobos.apple.com/us/r30/purple4/v4/78/1f/f9/781ff9ea-bf94-5309-4c32-4b901279e54a/mzl.rairyzma.53x53-50.png", "attributes":{"height":"53"}}, n{"label":"http://a990.phobos.apple.com/us/r30/purple4/v4/78/1f/f9/781ff9ea-bf94-5309-4c32-4b901279e54a/mzl.rairyzma.75x75-65.png", "attributes":{"height":"75"}}, n{"label":"http://a1675.phobos.apple.com/us/r30/purple4/v4/78/1f/f9/781ff9ea-bf94-5309-4c32-4b901279e54a/mzl.rairyzma.100x100-75.png", "attributes":{"height":"100"}}], "summary":{"label":"lcance instantaneamente pessoas na sua vida, gratuitamente. o messenger é como mensagens de texto, mas você não precisa pagar por cada mensagem (funciona com o seu plano de dados). \n\nnão é só para amigos no facebook: envie mensagens para pessoas na sua agenda de contatos e basta inserir um número de telefone para adicionar um novo contato.\n\nbate-papos em grupo: crie grupos para pessoas quem você mais envia mensagens. dê um nome eles, defina fotos para o grupo e os mantenha em um só lugar.\n\nfotos e vídeos: grave vídeos e tire selfies ou outras fotos diretamente aplicativo e envie-os com um toque.\n\nligações gratuitas: fale por quanto tempo quiser, mesmo com pessoas em outros países. (ligações são gratuitas somente através wi-fi. contrário, cobranças de dados padrão são aplicáveis).\n\nmais formas de enviar mensagens: \ndê vida às suas conversas com figurinhas. \nveja uma prévia das suas fotos e vídeos no rolo da câmera sem sair da conversa, e escolha melhores para enviar.\ngrave mensagens de voz quando tiver mais para dizer\n\nrecursos adicionais:\nsaiba quando pessoas viram suas mensagens.\nencaminhe mensagens ou fotos para pessoas que não estavam na conversa.\nprocure pessoas e grupos para entrar em contato com eles rapidamente.\native localização para que pessoas saibam que você está nas imediações.\nveja quem está disponível no messenger e quem está on-line no facebook. \ndesative notificações quando você estiver trabalhando, dormindo ou se precisar dar um tempo.\nfique conectado para nunca perder uma mensagem."}, "im:price":{"label":"grátis", "attributes":{"amount":"0.00000", "currency":"usd"}}, "im:contenttype":{"attributes":{"term":"application", "label":"aplicativo"}}, "rights":{"label":"© facebook, inc."}, "title":{"label":"messenger - facebook, inc."}, "link":{"attributes":{"rel":"alternate", "type":"text/html", "href":"https://itunes.apple.com/br/app/messenger/id454638411?mt=8&uo=2"}}, "id":{"label":"https://itunes.apple.com/br/app/messenger/id454638411?mt=8&uo=2", "attributes":{"im:id":"454638411", "im:bundleid":"com.facebook.messenger"}}, "im:artist":{"label":"facebook, inc.", "attributes":{"href":"https://itunes.apple.com/br/artist/facebook-inc./id284882218?mt=8&uo=2"}}, "category":{"attributes":{"im:id":"6005", "term":"social networking", "scheme":"https://itunes.apple.com/br/genre/ios-redes-sociais/id6005?mt=8&uo=2", "label":"redes sociais"}}, "im:releasedate":{"label":"2011-10-19t15:39:30-07:00", "attributes":{"label":"19/10/2011"}}}, n{"im:name":{"label":"whatsapp messenger"}, "im:image":[n{"label":"http://a1554.phobos.apple.com/us/r30/purple1/v4/1f/94/ff/1f94ffd9-159e-a247-2c0f-059f86b6c6c9/mzl.ivmblqpq.53x53-50.png", "attributes":{"height":"53"}}, n{"label":"http://a422.phobos.apple.com/us/r30/purple1/v4/1f/94/ff/1f94ffd9-159e-a247-2c0f-059f86b6c6c9/mzl.ivmblqpq.75x75-65.png", "attributes":{"height":"75"}}, n{"label":"http://a1251.phobos.apple.com/us/r30/purple1/v4/1f/94/ff/1f94ffd9-159e-a247-2c0f-059f86b6c6c9/mzl.ivmblqpq.100x100-75.png", "attributes":{"height":"100"}}], "summary":{"label":"o whatsapp messenger é um mensageiro para smartphone 09-10 20:04:03.013  18211-18241/com.yuretsrodik.top100apps w/dalvikvm﹕ threadid=11: thread exiting uncaught exception (group=0x42044e48) 09-10 20:04:03.023  18211-18241/com.yuretsrodik.top100apps e/androidruntime﹕ fatal exception: asynctask #1     process: com.yuretsrodik.top100apps, pid: 18211     java.lang.runtimeexception: error occured while executing doinbackground()             @ android.os.asynctask$3.done(asynctask.java:300)             @ java.util.concurrent.futuretask.finishcompletion(futuretask.java:355)             @ java.util.concurrent.futuretask.setexception(futuretask.java:222)             @ java.util.concurrent.futuretask.run(futuretask.java:242)             @ android.os.asynctask$serialexecutor$1.run(asynctask.java:231)             @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1112)             @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:587)             @ java.lang.thread.run(thread.java:841)      caused by: java.lang.nullpointerexception             @ com.yuretsrodik.top100apps.asynctaskparsejson.doinbackground(asynctaskparsejson.java:32)             @ com.yuretsrodik.top100apps.asynctaskparsejson.doinbackground(asynctaskparsejson.java:10)             @ android.os.asynctask$2.call(asynctask.java:288)             @ java.util.concurrent.futuretask.run(futuretask.java:237)             at android.os.asynctask$serialexecutor$1.run(asynctask.java:231)             at java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1112)             at java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:587)             at java.lang.thread.run(thread.java:841) 

will very thanksful help!! cuz i'm stack(

first make call result string called json. have convert string json object

          string json = null;           jsonobject jsonobj = null;  jsonobject feedsobject = null;        json = jparser.getjsonfromurl(jsonstringurl);        if (json != null) {     try {          jsonobj = new jsonobject(json);          feedobject = jsonobj.getjsonobject("feed"); 

for better understanding visit http://json.parser.online.fr/beta/ , paste json data there. on right have settings button---> show types can find objects, strings , arrays

see image below. trying object not array

enter image description here


Comments

Popular posts from this blog

javascript - how to protect a flash video from refresh? -

visual studio 2010 - Connect to informix database windows form application -

android - Associate same looper with different threads -