5

現在、私のアプリは、ユーザーが自分のGoogleカレンダーに単一イベントを追加支援する能力を持っていますが、多くのユーザーは、自動的に自分のGoogleカレンダーにすべてのイベントを追加したいAndroidカレンダーに外部カレンダーを登録する方法を教えてください。

final Intent calendarIntent = new Intent(Intent.ACTION_EDIT) 
     .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) 
     .setType("vnd.android.cursor.item/event") 
     .putExtra("beginTime", startTime) 
     .putExtra("endTime", startTime + 7200000L) // 2 hours 
     .putExtra("title", name) 
     .putExtra("description", description.toString()) 
     .putExtra("eventLocation", address); 

// later 
startActivity(calendarIntent); 

。私たちのサーバーチームは、人ができるICSフィードを作成しましたsubscribe to as an external Google calendar。しかし、これにはURLのコピーと貼り付けが含まれており、エンドユーザーにとっては紛らわしいものです。

ウェブ上では、人々をフォームhttp://www.google.com/calendar/render?cid=OUR_ICS_URLのURLにリンクすることができ、そこから比較的簡単にフィードを追加できます。しかし、AndroidブラウザでこのURLにアクセスすると、モバイルに関する奇妙なポップアップが表示されます( )。開発チームの高度なアンドロイドユーザーでも、そこから追加されたカレンダーを取得する方法がわかりませんでした。

私が調べたもう1つのことはGoogleカレンダーAPIでしたが、calendar list insert methodには外部カレンダーのURLではなく、GoogleカレンダーIDが必要です。

ここに良い解決策はありますか?ユーザーがデスクトップにアクセスしてフルサイズのWebブラウザを開くことなくカレンダーを購読できるようにする方法があるはずです。しかし、私が試したことは何も結果をもたらさなかった。

どのような考えですか?

答えて

0

おそらくAuthSubを使用してユーザーを認証すると、予定表リストの挿入方法を使用できるようになります。私はZend frameworkと思う。

+0

私が知る限り、カレンダーリストの挿入メソッドは、任意の外部カレンダーURLではなく、GoogleカレンダーIDのみを受け入れることができます。何か不足していますか? – mlc

+0

Zend frameworkのgetCalendarListFeed()機能を再現する方法があると瞬時に考えていました。ドキュメントに記載されているので、「カレンダーサービスは、認証済みのカレンダーのリストを取得することをサポートしていますこれは、GoogleカレンダーのUIに表示されるカレンダーと同じですが、「非表示」とマークされているものもあります。しかし、私はZendの専門家ではないので、これを分析することは私をはるかに超えています。 – Reggie

+0

ええ、ちょうどZend_Gdata_Calendar名前空間のその機能の背後にあるコードをチェックしたところ、外部URLから手動でカレンダーWebページを取得してその情報をDOMから抽出しているようです。単純なAndroidアプリのための洗練されたソリューションではありません。 – Reggie

関連する問題