StringIndexOutOfBoundsException
Taken from my applications Real-time crashes report. Even with extensive test I don't know when this occurs. The app is currently installed in more than 50000 active users
Affected android versions:
Android 4.4 | 537 | 27.3% Android 5.1 | 528 | 26.8% Android 6.0 | 498 | 25.3% Android 5.0 | 360 | 18.3% Android 4.2 | 42 | 2.1% Android 4.3 | 2 | 0.1%
More than 70% affected devices are Samsung galaxy devices. Top 10 affected devices.
Galaxy Grand Prime (grandprimevelte) | 225 | 11.4% Galaxy S4 (jflte) | 131 | 6.7% Galaxy S5 (klte) | 114 | 5.8% Galaxy Tab3 7.0 (lt023g) | 100 | 5.1% Galaxy A3 (a3ulte) | 79 | 4.0% LENNY3 (V3702AN) | 76 | 3.9% Galaxy S4 Mini (serranovelte) | 69 | 3.5% Galaxy Tab3 10.1 (santos10wifi) | 67 | 3.4% A7600-F (A7600-F) | 62 | 3.2% Galaxy Grand Neo Plus (grandneove3g) | 55 | 2.8%
java.lang.StringIndexOutOfBoundsException
com.spoledge.aacdecoder.IcyInputStream.parseMetadata
java.lang.StringIndexOutOfBoundsException:
at java.lang.String.substring (String.java:1931)
at com.spoledge.aacdecoder.IcyInputStream.parseMetadata (SourceFile:225)
at com.spoledge.aacdecoder.IcyInputStream.fetchMetadata (SourceFile:205)
at com.spoledge.aacdecoder.IcyInputStream.read (SourceFile:133)
at com.spoledge.aacdecoder.BufferReader.run (SourceFile:155)
at java.lang.Thread.run (Thread.java:762)
java.lang.StringIndexOutOfBoundsException
com.spoledge.aacdecoder.IcyInputStream.parseMetadata
java.lang.StringIndexOutOfBoundsException:
at java.lang.String.startEndAndLength (String.java:298)
at java.lang.String.substring (String.java:1087)
at com.spoledge.aacdecoder.IcyInputStream.parseMetadata (SourceFile:225)
at com.spoledge.aacdecoder.IcyInputStream.fetchMetadata (SourceFile:205)
at com.spoledge.aacdecoder.IcyInputStream.read (SourceFile:133)
at com.spoledge.aacdecoder.BufferReader.run (SourceFile:155)
at java.lang.Thread.run (Thread.java:818)
I found a clue, It happens when StreamTitle is empty. 11-30 18:27:47.493 D/IcyInputStream(17404): Metadata string: StreamTitle=''; 11-30 18:27:47.493 D/parseMetadata (17404): parseMetadata StreamTitle='';
I recommend you to use another alternative like exoplayer aacdecoder-android is no longer maintained