I was using my google maps app successfully and it works perfectly fine from all respect. but when i tried to get direction from two too far distance places it crashed and gave a OutOfMemoryError
to me.
The places for which i was getting direction is-
Source - magadan russia
Destination - cape point south africaMy Logcat
Throwing OutOfMemoryError "Failed to allocate a 28 byte allocation with 0 free bytes and 0B until OOM" (recursive case) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: "main" prio=5 tid=1 Runnable 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: | group="main" sCount=0 dsCount=0 obj=0x744132c0 self=0xb8a7efc0 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: | sysTid=4871 nice=0 cgrp=default sched=0/0 handle=0xb6fb4ec8 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: | state=R schedstat=( 13237478608 1327768343 8667 ) utm=1243 stm=80 core=2 HZ=100 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: | stack=0xbe1b7000-0xbe1b9000 stackSize=8MB 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: | held mutexes= "mutator lock"(shared held) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at java.lang.AbstractStringBuilder.toString(AbstractStringBuilder.java:636) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at java.lang.StringBuilder.toString(StringBuilder.java:663) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at com.mediatek.anrappmanager.MessageLogger.println(SourceFile:83) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at android.os.Looper.loop(Looper.java:155) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at android.app.ActivityThread.main(ActivityThread.java:5532) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at java.lang.reflect.Method.invoke!(Native method) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at java.lang.reflect.Method.invoke(Method.java:372) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:950) 04-06 16:42:41.423 4871-4871/com.afixi.prasenjeetpati.googleapi E/art: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:745)
I tried the url in the web to check if it is working or not , but it gave result and worked fine. but have a lots and lots of data.
The app i have designed was working fine but i have never checked with such long distances (25684 km by google maps app).
Anyone who is thinking how i was parsing the json data into my app . i have taken my directionparsing from thistutorial. i provided the parsing class here because i think this is where the problem is.
My Research
I have followed this , this , this and this SO links but not found much info to solve my problem.
Any suggestion please .