如何使用 android 使用日历 API 在谷歌日历上添加事件?

Posted

技术标签:

【中文标题】如何使用 android 使用日历 API 在谷歌日历上添加事件?【英文标题】:How to add event on google calendar using calendar API using android? 【发布时间】:2012-12-21 01:02:22 【问题描述】:

您好,我正在尝试使用 android 中的 Google 日历 API 在 Google 日历 中创建一个活动。

我已经创建了Google提供的示例项目,我按照每个步骤成功编译了项目。

但在这个 Google 日历示例中,我只能为我的 Google 日历帐户创建日历名称,无法创建任何活动。

有没有办法在 Google 日历中创建活动?如果可以,我该怎么做?

【问题讨论】:

点击以下链接。 ***.com/questions/43658751/…> 点击以下链接。 ***.com/questions/43658751/…> 【参考方案1】:

经过一段时间的搜索,我终于找到了解决方案。答案在谷歌文档中,它自己只需通过this link

它展示了如何使用谷歌日历 API 创建一个事件。

【讨论】:

hiii 你可以给我发送代码或告诉我如何在谷歌日历中添加事件或后台应用程序。我想在我从自定义日历中选择一个日期时添加事件。然后我可以在我的登录日历中看到谷歌日历中的默认 evnet hiii 你能告诉我如何在不打开弹出窗口的情况下在谷歌日历中添加事件..我无法理解文档。我完成了make api并在google帐户中添加了密钥。但是不明白如何添加事件告诉我? 只要下载问题中的源代码就行了 嘿,我从上面的链接复制简单添加事件的代码,但我想将它添加到谷歌日历中,我想在我的应用程序中添加静态用户名和密码。那么它怎么可能?如果您在任何房间,请提供链接,以便我们讨论该问题? 静态用户名和密码将不起作用首先你应该使用你的 g idz 登录。然后只有你可以添加事件【参考方案2】:

这是一个巨大的痛苦 - 但我终于让它至少可以用于创建事件。

下载最新的 Google php API zip,并将其上传到您的网络服务器上的包含文件夹。使用 Google API 控制台设置 API 客户端。确保将重定向 url 设置为与页面的 url 相同 - 所以它会重定向到它自己。

我最初只是为事件详细信息设置了一些变量,如果需要,您可以制作一个将这些变量塞入的表单。

这是我的代码:

<?php
    $jobname = "BINGO";
    $joblocation = "Your mums house";
    $jobdescription = "An interview with a dog.";
    $startofjob = "2013-12-20T17:00:00.000+00:00"; //datetimes must be in this format
    $endofjob = "2013-12-20T18:00:00.000+00:00"; // YYYY-MM-DDTHH:MM:SS.MMM+HH:MM
    //So that's year, month, day, the letter T, hours, minutes, seconds, miliseconds, + or -, timezoneoffset in hours and minutes



    include('google-api-php-client/src/Google_Client.php');
    include('google-api-php-client/src/contrib/Google_CalendarService.php');

    session_start();

    $client = new Google_Client();
    $client->setApplicationName('doesntmatter-whateveryouwant');
    $client->setClientId('yourclientid');
    $client->setClientSecret('yourclientsecret');
    $client->setRedirectUri('yourredirecturl-setingoogleconsole');
    $client->setDeveloperKey('yourdeveloperkey');
    $cal = new Google_CalendarService($client);

    if (isset($_GET['code'])) 
      $client->authenticate($_GET['code']);
      $_SESSION['token'] = $client->getAccessToken();
      header('Location: http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF']);
    

    if (isset($_SESSION['token'])) 
      $client->setAccessToken($_SESSION['token']);
    

    if ($client->getAccessToken()) 
      $event = new Google_Event();
    $event->setSummary($jobname);
    $event->setDescription($jobdescription);
    $event->setLocation($joblocation);
    $start = new Google_EventDateTime();
    $start->setDateTime($startofjob);
    $event->setStart($start);
    $end = new Google_EventDateTime();
    $end->setDateTime($endofjob);
    $event->setEnd($end);

    $createdEvent = $cal->events->insert('YOURCALENDARID@GOOGLE.COM', $event);
    echo $createdEvent->id;


    $_SESSION['token'] = $client->getAccessToken();
     else 
      $authUrl = $client->createAuthUrl();
      print "<a class='login' href='$authUrl'>Connect Me!</a>";
    
?>

【讨论】:

以上是关于如何使用 android 使用日历 API 在谷歌日历上添加事件?的主要内容,如果未能解决你的问题,请参考以下文章

使用 Nodejs 的服务帐户在谷歌日历中插入事件

在谷歌地图静态api中绘制圆形路径

如何使用我的 JSON 数据在谷歌地图 API 上创建标记?

谷歌日历的正确用法--在谷歌日历中添加农历天气中国节假日

如何在谷歌云功能中使用谷歌表格 API

如何使用坐标数组在谷歌地图 API 中绘制多边形?