Для вызова требуется уровень API 24 (текущий минимум равен 12): android.icu.util.calendar

Я делаю простое приложение для сигнализации. Где бы я ни использовал класс Calendar, он показывает ошибку, аналогичную заголовку.

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
calendar.set(Calendar.HOUR_OF_DAY, 10);
calendar.set(Calendar.MINUTE, 30);

Всякий раз, когда я строю свой проект, он строит отлично, но сбой приложений при запуске на телефоне. Ниже находится Logcat:

07-22 18:24:15.607 18047-18047/com.example.panwa.afinal D/AndroidRuntime: Shutting down VM
07-22 18:24:15.607 18047-18047/com.example.panwa.afinal W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x40d952d0)
07-22 18:24:15.627 18047-18047/com.example.panwa.afinal E/AndroidRuntime: ***FATAL EXCEPTION: main
  java.lang.NoClassDefFoundError: android.icu.util.Calendar***
      at com.example.panwa.afinal.MainActivity.startAt10(MainActivity.java:70)
      at com.example.panwa.afinal.MainActivity$3.onClick(MainActivity.java:46)
      at android.view.View.performClick(View.java:4275)
      at android.view.View$PerformClick.run(View.java:17434)
      at android.os.Handler.handleCallback(Handler.java:615)
      at android.os.Handler.dispatchMessage(Handler.java:92)
      at android.os.Looper.loop(Looper.java:177)
      at android.app.ActivityThread.main(ActivityThread.java:4947)
      at java.lang.reflect.Method.invokeNative(Native Method)
      at java.lang.reflect.Method.invoke(Method.java:511)
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
      at dalvik.system.NativeStart.main(Native Method)
07-22 18:25:33.824 18047-18047/com.example.panwa.afinal I/Process: Sending signal. PID: 18047 SIG: 9

У меня есть набор my min SDK для 11, но он все еще не работает.

Ответ 1

Вместо импорта android.icu.util.calendar попробуйте импортировать java.util.Calendar.

android.icu.util.calendar - замена ICU для java.util.Calendar, но она доступна только начиная с API 24. Таким образом, она будет работать только на устройствах, которые являются API 24 и выше.

Ссылка: