java.lang.RuntimeException: An error occurred while executing doInBackground()
        at android.os.AsyncTask$3.done(AsyncTask.java:309)
        at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
        at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
        at java.util.concurrent.FutureTask.run(FutureTask.java:242)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.SecurityException: Permission Denial: opening provider com.android.providers.calendar.CalendarProvider2 from ProcessRecord{a72672f 20232:com.android.calendar/u0a12} (pid=20232, uid=10012) requires android.permission.READ_CALENDAR or android.permission.WRITE_CALENDAR
        at android.os.Parcel.readException(Parcel.java:1620)
        at android.os.Parcel.readException(Parcel.java:1573)
        at android.app.ActivityManagerProxy.getContentProvider(ActivityManagerNative.java:3573)
        at android.app.ActivityThread.acquireProvider(ActivityThread.java:4858)
        at android.app.ContextImpl$ApplicationContentResolver.acquireUnstableProvider(ContextImpl.java:2031)
        at android.content.ContentResolver.acquireUnstableProvider(ContentResolver.java:1497)
        at android.content.ContentResolver.query(ContentResolver.java:486)
        at android.content.ContentResolver.query(ContentResolver.java:444)
        at com.miui.calendar.util.CalendarUtils.loadDaysOffInfo(CalendarUtils.java:408)
        at com.android.calendar.homepage.AllInOneActivity$LoadDaysOffInfoTask.doInBackground(AllInOneActivity.java:1177)
        at com.android.calendar.homepage.AllInOneActivity$LoadDaysOffInfoTask.doInBackground(AllInOneActivity.java:1174)
        at android.os.AsyncTask$2.call(AsyncTask.java:295)
        at java.util.concurrent.FutureTask.run(FutureTask.java:237)
        ... 3 more