마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

java.lang.NumberFormatException: Invalid int: "" 에러좀 잡아주세요ㅠㅠ

0 추천
이상하게 같은 소스인데도 안드로이드 버전 6.0.1로 돌리면 이 에러가나고,5.1.1 버전으로하면

에러없이 잘 되네요...무엇이 원인일까요;;;;;;;

위에 Integer abc; 선언했습니다.

에러뜨는라인 121번라인 코드

abc = Integer.valueOf((SaveSharedPreference.getInstance(mContext).get(SaveSharedPreference.PRE_USER_CLASSIFICATION, "")));

 

Process: star.busking_application, PID: 8977
   java.lang.RuntimeException: Unable to start activity ComponentInfo
   {star.busking_application/star.busking_application.Menu.Main_Page_Activity}: java.lang.NumberFormatException: Invalid int: ""
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3254)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3350)
       at android.app.ActivityThread.access$1100(ActivityThread.java:222)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1795)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:158)
       at android.app.ActivityThread.main(ActivityThread.java:7229)
       at java.lang.reflect.Method.invoke(Native Method)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
    Caused by: java.lang.NumberFormatException: Invalid int: ""
       at java.lang.Integer.invalidInt(Integer.java:138)
       at java.lang.Integer.parseInt(Integer.java:358)
       at java.lang.Integer.parseInt(Integer.java:334)
       at java.lang.Integer.valueOf(Integer.java:525)
       at star.busking_application.Menu.Main_Page_Activity.onCreate(Main_Page_Activity.java:121)
       at android.app.Activity.performCreate(Activity.java:6876)
       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1135)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3207)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3350)
       at android.app.ActivityThread.access$1100(ActivityThread.java:222)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1795)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:158)
       at android.app.ActivityThread.main(ActivityThread.java:7229)
       at java.lang.reflect.Method.invoke(Native Method)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
신입생 (510 포인트) 님이 2016년 10월 29일 질문

1개의 답변

0 추천

로그에 답이 있네요.

Invalid int: ""

빈문자는 int로 변환할 수 없는 타입이랍니다. 그래서 valueOf  메소드 호출시 에러가 난걸로 보이구요.

spark (227,930 포인트) 님이 2016년 10월 29일 답변
그럼 abc = Integer.valueOf((SaveSharedPreference.getInstance(mContext).get(SaveSharedPreference.PRE_USER_CLASSIFICATION, "")));
이부분을 어떻게 수정을해야되나요?ㅜㅠㅠㅠㅠㅠㅠ
Integer.valueOf((SaveSharedPreference.getInstance(mContext).get(SaveSharedPreference.PRE_USER_CLASSIFICATION, "0")));
api문서를 보셨으면 굳이 질문을 올리시지 않아도 될 상황이었네요. api 문서를 통해 어떤 값이 파라미터로 들어가야 하는지 확인하셔서 작업하시길 바랍니다. 프로그래밍할 때 아주 기본적인 사항입니다.
...