【发布时间】:2013-12-13 19:08:20
【问题描述】:
我在调试代码时遇到问题。我在第 88 行收到 java.lang.NumberFormatException: Invalid int: "" 错误,即 Calendar c = Calendar.getInstance();。我不明白Calendar 实例如何产生这样的错误。
WakefulReceiverWorker.java:
Calendar c = Calendar.getInstance(); // <----- line 88
long newStart = c.getTimeInMillis() + 300000;
AlarmManager mAlarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, randomInt, intent2,PendingIntent.FLAG_UPDATE_CURRENT);
mAlarmManager.set(AlarmManager.RTC_WAKEUP, (newStart), pendingIntent);
日志猫:
12-13 19:57:01.589 2070-2085/com.example.app W/System.err﹕ java.lang.NumberFormatException: Invalid int: ""
12-13 19:57:01.619 2070-2085/com.example.app W/System.err﹕ at java.lang.Integer.invalidInt(Integer.java:138)
12-13 19:57:01.629 2070-2085/com.example.app W/System.err﹕ at java.lang.Integer.parseInt(Integer.java:359)
12-13 19:57:01.639 2070-2085/com.example.app W/System.err﹕ at java.lang.Integer.parseInt(Integer.java:332)
12-13 19:57:01.639 2070-2085/com.example.app W/System.err﹕ at java.util.Calendar.getHwFirstDayOfWeek(Calendar.java:807)
12-13 19:57:01.639 2070-2085/com.example.app W/System.err﹕ at java.util.Calendar.<init>(Calendar.java:745)
12-13 19:57:01.639 2070-2085/com.example.app W/System.err﹕ at java.util.GregorianCalendar.<init>(GregorianCalendar.java:338)
12-13 19:57:01.649 2070-2085/com.example.app W/System.err﹕ at java.util.GregorianCalendar.<init>(GregorianCalendar.java:239)
12-13 19:57:01.649 2070-2085/com.example.app W/System.err﹕ at java.util.Calendar.getInstance(Calendar.java:1086)
12-13 19:57:01.649 2070-2085/com.example.app W/System.err﹕ at com.example.app.WakefulReceiverWorker.onHandleIntent(WakefulReceiverWorker.java:88)
12-13 19:57:01.659 2070-2085/com.example.app W/System.err﹕ at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
12-13 19:57:01.659 2070-2085/com.example.app W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:99)
12-13 19:57:01.659 2070-2085/com.example.app W/System.err﹕ at android.os.Looper.loop(Looper.java:137)
12-13 19:57:01.659 2070-2085/com.example.app W/System.err﹕ at android.os.HandlerThread.run(HandlerThread.java:60)
【问题讨论】:
-
这不是另一个变量....这是日历中的无效日期。
-
@Elliott Frisch 不,变量 c 在这个类中是唯一的。
-
" Calendar c = Calendar.getInstance(); " 你确定这是第 88 行吗?
-
stackoverflow.com/questions/16936086/… 另一个类似的问题。
-
Calendar.getHwFirstDayOfWeek 不是标准的 java.util.Calendar 方法。这可能是华为实施错误。移动设备供应商有时会覆盖 Android 框架代码以使用其特定硬件。似乎每次搜索 getHwFirstDayOfWeek 都是 Android 华为设备...