在 android 台设备上访问日历时出现异常

Exception while accessing calendar on android device

在 android 设备上启动日历时出现异常。

Logcat:

`

FATAL EXCEPTION: main
Process: com.google.android.calendar, PID: 7209
java.lang.IllegalArgumentException: the name must not be empty: null
       at android.accounts.Account.<init>(Account.java:48)
       at com.android.calendar.calendarlist.CalendarListUtils.processCursor(CalendarListUtils.java:155)
       at com.android.calendar.calendarlist.SelectCalendarsAdapter.swapCursor(SelectCalendarsAdapter.java:160)
       at com.android.calendar.calendarlist.DrawerFragment.onLoadFinished(DrawerFragment.java:244)
       at com.android.calendar.calendarlist.DrawerFragment.onLoadFinished(DrawerFragment.java:55)
       at android.app.LoaderManagerImpl$LoaderInfo.callOnLoadFinished(LoaderManager.java:483)
       at android.app.LoaderManagerImpl$LoaderInfo.onLoadComplete(LoaderManager.java:451)
       at android.content.Loader.deliverResult(Loader.java:144)
       at android.content.CursorLoader.deliverResult(CursorLoader.java:109)
       at android.content.CursorLoader.deliverResult(CursorLoader.java:97)
       at android.content.AsyncTaskLoader.dispatchOnLoadComplete(AsyncTaskLoader.java:265)
       at android.content.AsyncTaskLoader$LoadTask.onPostExecute(AsyncTaskLoader.java:92)
       at android.os.AsyncTask.finish(AsyncTask.java:651)
       at android.os.AsyncTask.-wrap1(AsyncTask.java)
       at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:668)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       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)
   Force finishing activity com.google.android.calendar/com.android.calendar.AllInOneCalendarActivity

`

有人遇到过这个问题吗?任何帮助将不胜感激。

这是题外话。 Whosebug 适用于编程问题。 无论如何,只是为了回答,我认为您的日历应用程序尚未授予足够的权限。

转到设置 --> 应用程序 --> 日历。 单击权限并启用所有权限。

现在重新启动 phone 并尝试。现在应该可以了。

如果还是不行,请尝试清除它的数据和缓存,然后重试。

@克里希纳,

问题可以通过设置 --> 应用程序并清除日历应用程序的缓存和数据并强制停止日历应用程序来解决。

此外,还有一个 运行 用于日历的应用程序,名为 "Calendar storage",可以在“设置”-->“应用程序”中找到,然后在顶部菜单中单击“显示系统”。

在此屏幕上,所有系统应用程序都将可见。单击日历存储并按照所有步骤清除缓存和数据并强制停止应用程序。

现在启动日历应用程序,它将正常启动。