googlemaps / android-maps-utils

Maps SDK for Android Utility Library
https://developers.google.com/maps/documentation/android-sdk/utility
Apache License 2.0
3.54k stars 1.53k forks source link

"java.lang.StringIndexOutOfBoundsException: length=5289; index=5289" #92

Closed abhilashlr closed 10 years ago

abhilashlr commented 10 years ago

When I try PolyUtil.decode(polyline) i get the error saying:

E/AndroidRuntime(6046): Caused by: java.lang.StringIndexOutOfBoundsException: length=5289; index=5289

What could be the possible mistake I'm committing ?

broady commented 10 years ago

With what precise string?

abhilashlr commented 10 years ago

Oops! Sorry. thats my mistake. I used the jsonobject instead of its value.

{"points":"abooAwrlhN@@@AXYZWXYXWZWXYRQ^@XYXWV]_@PYDWAa@?c@@@Js@Va@VI@MNSDo@Fu@@QDc@Pc@Ti@P]HUPe@ZS^?b@?b@@b@?b@@b@?b@@b@?b@@Z?j@Cj@CZA^Cd@GB?^Gb@Ef@GZI@M@KREl@WXKd@U^O^Q^O^Q^Oj@WRI^Q\\Q^Q^Q^Q^O\\Q^QTMHC^Q\\Qf@SVM^Q^Q^Q\\O^QTKh@W\\Q^Q^Q^O^Q^Q\\Q^Q^Q^Q\\O^Q\\Q@Q^Q\Q^O^Q^Q^Q\Q^O^Q^Q^Q^OTMf@U^Q\Q^Q^Q@SZO^Q^Q^Q^O\\Q^Q^Q^Q^Q\\O^Q^Q^Q^QFCTM^Q^O^Q^Q\\Q^Q^O^Q^QNIl@Y^Q^Q\\Q^Q^Q^Q\\OPIl@Y^O^Q^O^Q^QPIl@Sj@SVI@M@Ij@MVE@Ib@IVEHC@Ib@I^Gd@I@Ib@G@Ib@GNEt@I@Eb@Gb@Eb@G@En@IVC@Gb@Eb@G@Eb@Gb@E@Gb@Eb@Eb@G@ETCn@MZGFAZGf@M@K@MZId@Q^O^ORGj@Y^S\Q^Q\Qj@YPMZUZU^WVUZYXWXYVUZ]VYVYXYT]T[T]T[T]T[T]V[Xc@PUT]T]R[FINSR[T]\g@LQV]T[T[T]T[T]V[T]JM^k@T[R]T[T]T]T[T]T]T[T]T[T]T]T[T]T[R]V]R[T]T[T]T]T[T]T[T]T]T[T]T[R]V]R[T]T[T]R]T]T]R]T]R]T]T]R[T]R]T]R]T]T]R[T]R]T]R]T]T_@P[P_@Tk@?W?c@Bm@Ha@NWb@W^EX?d@RZd@RXTVVT@NVJh@R^L@LTHHB@L@L^N@L^LRFn@R^L@L@L^LXJf@R\Pf@TVJ@L^N@Ln@RPF@L^L@L@L^L@L@N^J@N^L@L@L^L@Lb@L\L@L^L@L@N^LHBVH^L@L@LXJf@P@L^L@L^L@L@L^L@L@L^L@L^L@L@L^L@L@L^L@LPFn@R@J@Lh@NVJJDFB\T^d@VZVZ\b@NRTZZd@LTR^P^Td@LXP^P^N^P^P^P^P^P^N^P^P^P^P^P^HPXl@N^P^P^P^P^P^P^N^P^P^P^P^NZRb@P^P^P\P^P^P^FLHPP^P^P^R@N\P^P^P^P^N^P^P^P\P^P^P^P^Vl@JPP^P^P^P^P^P^P^P^P^P^Xl@HNV@PXR\Xb@TRb@^PNZTVPb@V\RNHl@X^N^PZNd@L@Lh@NVH@Nb@GZQ\UZU\S\UZUZS\WXWZWLKj@@\UNKf@@ZU\UZWZU\ULKj@@b@YVM^O^QZMb@S^O^O^Od@SZK^O^M`@Oh@STKh@STYL]D@DWFo@Fe@Ba@B@Fg@BWDq@@[Dk@Dq@?W?u@?S@c@@c@@g@FSl@ATAp@@d@?f@?^B@@b@Bb@@b@Bb@Bh@B\\@b@Bb@Bb@Bn@BVB@Db@Dp@FRHRJf@^XJf@Fl@FX@b@@b@@d@@b@EHUH[Lc@Lk@R[t@HX?FIPs@Li@NIj@Bb@@b@Bf@?FSDm@Dk@RSH@VBb@Db@F@FVBn@H@Db@Fl@HVBb@Bb@Dh@BPUJc@La@Nk@FYHa@Jc@Ja@Hc@Ja@Hc@Ja@Je@J@Ja@Jc@Ja@Ja@@IHYFWNk@Jc@Ha@Jc@Ja@DQRq@La@Ja@La@Jc@J]Ne@Ja@La@La@La@La@FQRq@Ja@La@Ro@FSN@La@La@Na@L@Nc@L@La@La@Ne@H]DUJq@Hg@B]De@Dc@Fq@BUDc@Dc@Be@Dc@Dc@Dc@Dc@B@Fg@De@Dc@Dc@Dc@BK@QFi@Fc@Fc@Hq@?UBe@@c@@]?i@?UKs@O]OW@m@OQW[OS@o@IYM@Ge@Gc@Gc@Ec@Ec@Gg@A@@g@RUd@?b@Ab@?b@Ab@?\?h@Ab@?b@?b@AZ?j@Ch@CXKXQ\Kh@Eb@Cl@CBHBr@Bb@@d@Bb@@ZFj@Fh@JVLp@BVFb@Db@BTBr@@r@ATEl@IVQl@ITQ^Wn@EPOf@F\d@@J@Ff@DLPE^Kb@K@K@Kb@EPQp@Kb@K@K@Mj@DTPPf@Vd@L@J@J@HZHf@L@J@J@Jb@F@Dd@?b@@b@@b@@Z?j@@b@@b@?b@@b@?b@@b@?b@@d@@@?b@@b@@b@@b@@b@?b@@b@@b@@b@@H?X?b@@b@@b@@X?l@@b@@b@@b@@b@@R@N?b@@f@@^@b@@b@?T@L?b@?b@@b@@b@?b@@X?D@f@?b@?b@?@?b@Cj@?ZF@Dd@@b@?b@@b@@b@@T?p@@b@?b@@b@@b@?Z@j@@@@b@BL?T@b@@b@@b@@X@l@@b@@b@@b@?p@@T?b@?b@@b@?\\?h@?VAn@El@GXC@Gp@ITC@Eb@GZEx@?T?b@@j@@@?X@b@Bb@Bb@@Z@p@FVPF^Er@CVCb@Eb@Cb@Eb@AR?x@H\\XJh@Fb@D@Db@Db@DTDn@Fb@Db@Db@D@DRBr@DXBB@\\@n@?h@?\\@b@@b@?b@@b@Db@B\\Bf@Bb@Bb@Bb@Bb@BXBl@Bb@Bb@BZDHT?\\?V?d@Bf@XP@?b@?b@?b@?b@?b@?b@?b@?@?d@?b@Ab@?b@Ab@?b@Af@?^AN?R?b@?b@?b@?b@?b@Ab@?b@?b@?b@?b@?b@?b@?b@?D?b@?VPFb@A@Af@Kl@IRGR]h@S^[h@IRIVSh@O@Q@Md@FRZFp@Ab@C@Ab@AR?r@?j@?\\?b@@b@@b@?^@f@?b@@b@?b@@b@@b@?X?l@@b@@b@@b@@b@?b@@@@d@?b@@b@?b@?b@@b@?b@?b@@b@?D?\@Z?j@?b@?b@@b@?b@?b@?d@?@?b@@b@?b@?\\?d@Cd@Gb@Gb@GREp@K@Gb@G@Gb@G@Ib@G@GVEn@K@Al@AX@b@@b@Bb@@b@@b@B@@d@?b@?b@?b@?b@?^?f@Ab@CD?\\Ab@Ab@Af@C^Ab@Cb@Ab@Cb@Ab@Cb@Ab@Cb@Cp@CT?b@?b@Ab@?b@Ab@?b@Ab@?b@Ab@?@?d@?b@?b@?b@?b@?b@?b@?b@?b@?b@?b@?b@?P?t@?b@?b@?b@?b@?b@?b@Ab@?b@?r@?R?b@?b@?b@?b@?b@@b@?b@?b@?b@?b@?b@?b@?j@@Z?b@?b@?b@@b@?b@?b@?b@@b@?^?f@@b@?r@@RBb@Df@F\Dh@HL@N@@Db@Bb@Db@Db@Dp@FR@b@Bb@Bb@Bb@Db@Bh@DRP?ZEl@Eb@Cd@Eb@Eb@Gt@APCb@Gt@FVRLh@J@H@H@Jb@H@HVFj@Jb@J@H@H@Jb@F@Hb@F@Hb@F\Fd@Jb@H@Hd@J\\JVD\\Ph@V^P^P\\R^P^P\\P^P^PVLd@Tj@VTFd@J\\Fb@FVDl@Fb@F@Db@Fb@D@Fp@HTBb@D@Db@Fb@D@Db@Fd@D@@b@@b@@h@@\?b@Ab@?b@Ap@?T?b@@b@?b@@X?h@Bp@JTFXFHB@H\\Hd@L@L@Jj@PTF@Hb@J@J@J^Hb@J@J@J@Hb@J@J@J@H@JTFB@h@L@L@J@J@J@L^J@Jl@PTF@LZJf@Hb@Hb@H^Fb@Fb@F@Db@FRDr@@b@Bb@@b@@@Bb@@d@@@B^@f@Ab@Ab@?b@Ab@A@Ad@Ab@Ab@AVAn@Ab@?V?n@Fr@FPF@LVHd@V^R@RTVVXLNZj@LXRf@LXVb@Vd@RRVXVX^R\Pb@J@JRDLDf@LZDb@H@Fb@F@Hb@F@F^Fr@PPJ@RTVLLb@r@JVJXHv@AV?d@Ab@AZEj@Ed@Eb@Eb@Eb@Eb@ARE|@@l@DPF@Nb@HVb@n@LPTZT\TZT\TZT\VZTZDHNRT\JN^f@VZT\VZTZT\VZTZTZT\VZZb@PRT\TZVZTZVZT\TZVZTZV\TZTZVZVZTZVZVZTZVZ`@PRXXb@d@JNV\NRVf@LTJPJTN@N^N@L\P@N@P^N^P^N^P@N^Rb@LZN@P^N^P^N^P`@N^P^N^HPXl@P^P^P^P^P^P^P^P\JVP\DHZn@HLT\T\TZT\TZT\TZT\TZV\TZTZT\TZVZT\TZT\

Thanks for your comments, else I'd have thought there was some other issue :) (Unit testing with new code) :D

Thanks broady :)

broady commented 10 years ago

Perhaps it should throw a better error message, though. :)

abhilashlr commented 10 years ago

Yes. The JSONObject as a string din't throw an error. Probably needs to be included as well as error handling ;)