【发布时间】:2014-03-07 02:45:04
【问题描述】:
到目前为止,我一定已经经历过基于 Google 日历的 Stack Overflow 问题,但运气不佳。我已经尝试了几个小时,但几乎没有结果。
我是 Java 和 Android 的新手,在该领域外几乎没有经验。基本上我遇到的主要问题是查看另一个用户设置为公开的 Google 日历。
目前,通过 Google 教程和其他网站,我已经设法显示日历,这非常简单。它只会加载并显示当前用户的日历。这可以从字面上完成(在布局中使用一个简单的按钮)。
public void onClick(View view) {
// A date-time specified in milliseconds since the epoch.
long startMillis = System.currentTimeMillis();
Uri.Builder builder = CalendarContract.CONTENT_URI.buildUpon();
builder.appendPath("time");
ContentUris.appendId(builder, startMillis);
Intent intent = new Intent(Intent.ACTION_VIEW).setData(builder.build());
startActivity(intent);
}
显然,这不会传递公共帐户或任何东西的任何用户数据,我一直在阅读 Google 教程中的 Calendar Provider 开发人员指南。我试图设置帐户详细信息,但它从来没有用过。我曾尝试将其用作同步适配器,但老实说,我只知道我做得不对。我不知道我是否真的需要使用同步适配器,因为我想做的只是查看事件,而不是修改任何内容或更新任何内容。
我正在使用 API 14+,并希望使用日历提供程序等。它看起来很简单,但我已经为此苦恼了几天,并投入了很多时间,但似乎我没有做任何事情.至少我有某种日历打开方式,但这不是我想要的。
这一切都取决于同步适配器吗?如果是这样,我将如何调用日历?另一个类似的问题有
private static Uri buildCalUri() {
return CalendarContract.Calendars.CONTENT_URI
.buildUpon()
.appendQueryParameter(CalendarContract.CALLER_IS_SYNCADAPTER, "true")
.appendQueryParameter(Calendars.ACCOUNT_NAME, ACCOUNT_NAME)
.appendQueryParameter(Calendars.ACCOUNT_TYPE, CalendarContract.ACCOUNT_TYPE_LOCAL)
.build();
}
我希望这与我需要的相似,但我非常不确定。在开发者教程中,如果帐户不在设备上,ACCOUNT_TYPE_LOCAL 很重要
任何帮助将不胜感激!
【问题讨论】:
标签: java android view calendar