最近グーグルプレイでAndroidゲームをリリースしましたが、このNumberFormatExceptionのクラッシュレポートを受け取りました
私はそれが由来するコードをピンポイントで指摘しました。しかし、私が最も懸念しているのは、私がテストした(そして多くのデバイスでテストした)どのデバイスにも例外がスローされないことです。
私はこのように配置された文字列ファイルを持っています..."10.48,1.6,90.0,1.155,1.73"ここで各フロートはコンマで区切られています...私のアプリのユーザーにこの奇妙な例外が発生した理由がわかりません:(
これが私がファイルから解析するために使用しているコードです
while(j<line.length())
{
if(line.charAt(j) == ',')
{
endingPoint = j;
planetList[i].add(Float.valueOf(line.substring(startingPoint, endingPoint)));
startingPoint = j+1;
}
else if(line.charAt(j) == 's')
{
i++;
startingPoint = j+1;
}
j++;
}
そして、これが例外をスローしている行です...
cam = new Camera(Float.valueOf(df.format(worldWidth)),fourPointEightFixer);
送信された私のアプリの親切なユーザーのスタックトレースは次のとおりです。
java.lang.NumberFormatException
at org.apache.harmony.luni.util.FloatingPointParser.parseFltImpl(Native Method)
at org.apache.harmony.luni.util.FloatingPointParser.parseFloat(FloatingPointParser.java:321)
at java.lang.Float.parseFloat(Float.java:323)
at java.lang.Float.valueOf(Float.java:362)
at com.OnMyOwn.Game.WackyGravity.<init>(WackyGravity.java:97)
at com.OnMyOwn.Game.LevelChooserMod.initiateGame(LevelChooserMod.java:550)
at com.OnMyOwn.Game.LevelChooserMod.onButtonTouchUp(LevelChooserMod.java:576)
at com.OnMyOwn.Game.LevelChooserMod.update(LevelChooserMod.java:384)
at com.OnMyOwn.framework.impl.GLGame.onDrawFrame(GLGame.java:165)
at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1363)
at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1118)