当前位置: 首页 > 知识库问答 >
问题:

Android日历应用程序在创建新事件后崩溃

江飞白
2023-03-14

我正在使用这段代码向日历添加一个新事件。

    ContentResolver cr = context.getContentResolver();
    ContentValues values = new ContentValues();
    values.put(Events.DTSTART, event.getStartTime());
    values.put(Events.DTEND, event.getEndTime());
    values.put(Events.TITLE, event.getSubject());
    values.put(Events.EVENT_LOCATION, event.getLocation());
    values.put(Events.DESCRIPTION, event.getDescription());
    values.put(Events.CALENDAR_ID, calendarId);
    values.put(Events.EVENT_TIMEZONE, TimeZone.getDefault().getID());
    Uri uri = cr.insert(Events.CONTENT_URI, values);

当这段代码运行时,它似乎一点都不出错。然而,当我使用默认的Android日历应用程序打开日历时,当我试图查看添加的事件时,它会崩溃。

01-15 21:57:24.091: E/AndroidRuntime(19125): android.database.sqlite.SQLiteException: 
unknown error (code 0): Unable to convert BLOB to string

这是值的转储

01-15 22:39:47.561:I/System.out(25804):值:CALENDAR_ID=2 EventLocation=FNDN title=DNDBDB DTSTART=1421386255183 DTEND=1421389801672 Description=FNFBD EventTimeZone=America/New_York

共有1个答案

罗伟兆
2023-03-14

添加事件的代码是正确的。要解决这个问题,要么放入所有的源代码,要么放入break point进行调试,以分析问题出现的地方。据我所知,您试图在事件之后或事件放置之前在sqllite数据库中保存一些东西,而这正是发生错误的地方,因为您传递的值不符合为数据库中的变量定义的数据类型。

 类似资料:
  • 问题内容: 当我以编程方式创建一个始终记为生日日历(类型)的日历事件时,我遇到了一个奇怪的问题,我不知道为什么会这样记录日历事件。 我使用的代码如下:Xamarin C# 请问有人有什么提示或想法可以指引我正确的方向吗? 提前致谢。 问题答案: 下面回答的问题是旧的,请参考Pkosta的答案,它提供了更准确的答案… 您必须将CalendarId值设置为3,而不是默认的生日日历1。例如 更改为 它为

  • 我一直在使用curl和Outlook REST API v1.0(具有基本身份验证)在Outlook日历中创建日历事件。基本身份验证即将被弃用,因此我现在正在尝试迁移到带有OAuth 2的Microsoft Graph v1.0。我已经走了一段路,但在运行 POST 以创建事件时卡在“错误访问被拒绝”上。这是我到目前为止所做的: > < li> 在此注册我的应用程序(curl):https://a

  • 问题内容: 每次我从Eclipse导出签名应用程序并将apk文件安装到手机上时,该应用程序都会崩溃。这仅在启用Proguard的情况下发生。 这是我的保护文件 我运行了adb logcat命令来检查崩溃报告。以下是我认为很重要的报告摘要: 第二段: 如果有人可以帮助我,我将非常感谢并接受您的回答。 更新: 所以我将这些添加到我的proguard文件中 现在启用Proguard时出现与Jackson

  • 我的应用程序的目的是通过一个自定义对话框从一个评级栏中检索一个值(5分),并将其显示在主activity的一个TextView中。当我点击我在下图中用红色勾勒出来的按钮时,应用程序崩溃并关闭。 该应用程序由2个类/活动组成。主activity和自定义对话框activity。 这两个文件的代码可以在下面找到: mainactivity.java: mealRaterDialog.java: 我是An

  • 在以前的代码上,谁医生帮了我 现在,android应用程序在我的手机上运行时崩溃了,这是错误日志 第一个问题是在我用相机扫描二维码后,它不能显示在二维码的结果进入 第二个问题是,我从存储器中选择了一个QRcode图像,然后点击确认,它崩溃了 下面是我认为的问题 类型不匹配:推断的类型是Uri?但乌里是意料之中的 冗余SAM构造函数 'onRequestPermissionsResult(Int,数

  • 每当它试图创建一条线时就会崩溃。我想用PathOverlay,但已经不推荐了。我想画一条线。 梯度控制台 正在执行任务“:app:validateSigningDebug”(最新检查耗时0.0秒),原因是:任务尚未声明任何输出:app:validateSigningDebug(线程[Daemon worker Thread 2,5,main])已完成。花了0.022秒:应用程序:packageDe