13

ファイル、写真、単純な文字列などの追加データをカレンダーイベントに添付するにはどうすればよいですか..

拡張プロパティを使用し、拡張プロパティを介して追加のデータを挿入できました

Uri extendedProperties=Uri.parse("content://com.android.calendar/extendedproperties");
ContentValues extendedValues=new ContentValues();
extendedValues.put("event_id", id);
extendedValues.put("name",key);
extendedValues.put("value",value);
getApplicationContext().getContentResolver().insert(extendedProperties, extendedValues);

後で以下のようにそのデータを取得できます

Uri extentdedProperties=Uri.parse("content://com.android.calendar/extendedproperties");
CursorextendedPropertires Cursor=getContentResolver().query(extentdedProperties,null,"event_id = "+Id +",null,null);

Android 2.2で正常に動作します... Android 4.0(アイスクリームサンドイッチ)でテストした場合、同じコードです。同期アダプターのみが content://com.android.calendar/extendedproperties にアクセスできるというエラーがスローされます。

だから私は「callerissyncadapter」としてクエリを実行しました。拡張プロパティを挿入できるようになりました。ただし、イベントがサーバーに同期されると、サーバーによって拡張プロパティが削除されます。

これらの拡張プロパティでさえ、(Google 以外の) カレンダー プロバイダによって完全にはサポートされていません。

拡張プロパティ以外の追加データをカレンダー イベントに添付する方法はありますか、またはこの拡張プロパティをより適切な方法で利用できますか。

4

1 に答える 1