이 코드는 불과 며칠 전부터 작동합니다. 이제 더 이상 안드로이드 버전 6.0에서 작동하지 않습니다. 버전 7.0 이상에서 작동합니다. 나는 withTime를 이동하면다른 메서드에서 DateTime.withTime()을 호출하면 exceptionInInitializerError가 발생하는 이유
public void setToDate(String quickDate) {
DateTime toDate = new DateTime();
if (quickDate.equals(context.getString(R.string.quickDate_today))) {
fromDate = fromDate.withTimeAtStartOfDay();
toDate = DateUtils.endOfDay(toDate);
}
....
}
/**
* @return a copy of dateTime with the time set to 11:59:59.999 pm.
*/
public static DateTime endOfDay(DateTime dateTime) {
return dateTime.withTime(23, 59, 59, 999);
}
여기, 이상한 일이()과 같이 유틸리티 방법 대신 직접 호출 할 전화 :
public void setToDate(String quickDate) {
DateTime toDate = new DateTime();
if (quickDate.equals(context.getString(R.string.quickDate_today))) {
fromDate = fromDate.withTimeAtStartOfDay();
toDate = toDate.withTime(23, 59, 59, 999);
}
....
}
그런 다음 코드가 작동
는, 예외가 발생하지 않습니다. 왜? 어떻게하면 유틸리티 메소드 내에서 다시 작동하게 할 수 있습니까?스택 추적 : 당신은 아마 알다시피
Process: com.salesrabbit.android.sales.universal, PID: 29358
java.lang.ExceptionInInitializerError
at com.salesrabbit.android.sales.universal.canvass.filter.filters.Filter.setQuickFromAndToDates(Filter.java:273)
at com.salesrabbit.android.widget.FilterView.lambda$loadQuickDateMenu$3$FilterView(FilterView.java:203)
at com.salesrabbit.android.widget.FilterView$$Lambda$3.onMenuItemClick(Unknown Source)
at android.support.v7.widget.PopupMenu$1.onMenuItemSelected(PopupMenu.java:108)
at android.support.v7.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:822)
at android.support.v7.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:171)
at android.support.v7.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:973)
at android.support.v7.view.menu.MenuPopup.onItemClick(MenuPopup.java:127)
at android.widget.AdapterView.performItemClick(AdapterView.java:310)
at android.widget.AbsListView.performItemClick(AbsListView.java:1145)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:3066)
at android.widget.AbsListView$3.run(AbsListView.java:3903)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.IllegalArgumentException: Unknown pattern character 'X'
at java.text.SimpleDateFormat.validatePatternCharacter(SimpleDateFormat.java:323)
at java.text.SimpleDateFormat.validatePattern(SimpleDateFormat.java:312)
at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:365)
at java.text.SimpleDateFormat.<init>(SimpleDateFormat.java:258)
at com.salesrabbit.android.util.DateUtils.<clinit>(DateUtils.java:31)
6.0의 오류는 무엇입니까? –
그것은 ExceptionInInitializerError입니다. –
stacktrace를 질문에 추가하십시오. 아마 새로운 DateTiime에 코드가 있습니다. –