4

ユーザーにユーザー ID を要求し、静的 HTTP リンクにユーザー ID を追加して、.ical (カレンダー) 拡張子を持つユーザーの毎日のスケジュール情報ファイルを取得するアプリケーションを作成しています。

ファイルからデータを読み取り、新しい UI でフォーマットし、Android デバイスで有用なデータを表す必要があります。

私の質問は、舞台裏で静的 HTTP リンクにアクセスできますか? また、デスクトップ ブラウザで同じリンクを使用すると、ユーザーにファイルを保存するように求められます。モバイルでこれを行うにはどうすればよいですか? データを読み取ってどこかに保存する必要がありますか、それとも .ical ファイルを保存してそこから読み取ることができますか?

4

1 に答える 1

4

Androidデバイスは通常、iCalendar形式のファイル(.ics)を処理​​できません。そのようなファイルを単に「開いて」情報を表示する方法はありません。カレンダーファイルの情報を解析するには、コードを作成する(またはiCal4jなどのライブラリを使用する)必要があります。

あなたの質問とコメントに基づいて、これをいくつかの部分に分割する必要があります:

  1. UIに入力されたユーザーのIDを取得します
    • String userId = ((EditText) findById(R.id.user_id)).getText.toString();
  2. ユーザー固有のカレンダーURLを生成する
    • static final String CALENDAR_BASE = "http://example.com/cal/";
      String escapedUserId = URLEncoder.encode(userId, "UTF-8");
      String url = CALENDAR_BASE + escapedUserId +"/events.ics";
  3. HTTP経由でカレンダーファイルを取得する
  4. ファイルをローカルに保存する
  5. カレンダーデータをユーザーに表示する
    • Webから直接保存したディスクからファイルを読み取ります
    • iCal4jを使用してデータを解析し、任意のUI形式で表示します

不明な場合やより具体的な情報が必要な場合は、Stack Overflowを検索するか、個々のパーツに関するより具体的な質問を投稿できます。:)

于 2010-01-24T00:49:54.850 に答える