S!アプリ
JavaFX mobileの提供が開始された。 サン・マイクロシステムズの発表 @ITの記事 JavaFX mobileではなく、JavaFXではあるが、CodeZineでの記事を読んでみた。記事を読んでみてビックリした。これって、Swingの面倒くささを解消するためのものだったのか。ち…
Lightweight UI Toolkit(LWUIT)を使ってみた。使い方は以下の通り。 LUWITのソースコードへのアクセスに記載してある方法でソースコードをダウンロードして、Eclipseのソースコードのフォルダに保存する。 いくつかのクラスでエラーになるので、そのクラスは…
スケジュール管理ソフトのプログラミングを続けていく上で、やってきた事と、これからやる事をマインドマップにまとめてみた。これを元に、あとどれくらいかかりそうか考えていこう。
新しいノートPCを買った(OSはWindows Vista)ので、開発環境の構築をやり直している。以前の開発環境の構築の記事は、予想外にアクセス数が多いので、アップデートしておこうと思って、再度、書く事にした。(前の記事では、JavaやEclipseについての知識はある…
Sun Microsystemsが、Java ME向けのユーザーインターフェース(UI)のツールキット、Lightweight UI Toolkit(LWUIT)をオープンソースとしてリリースした。このツールキットを使えば、Java SE等のSwingと同じようなやり方で、UIを作る事ができるようである。ス…
Googleカレンダーとの連携は、予想以上に大変だ。 HTTPS通信でAuthCodeを取得しようとしても、Googleの使っている認証局には、SoftBankの携帯は対応していない。 Content-Typeも、S!アプリでは許可されていないものになっている。 と言う事で、自分のサーバ…
今までは、予定の作成と参照しかできなかった。プログラムの機能を考える時は、データを元に考えるとよい。そして、データについて、以下の機能があるかどうかを忘れずに確認する。 作成(Create)機能 閲覧(Read)機能 更新(Update)機能 削除(Delete)機能 上記…
今回は、Googleカレンダーに予定を登録できるようにする。予定のクラス(Event)にgetXML()を追加して、XMLのデータを得られるようにする。 package jp.dip.ettem.scheduler;import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; impo…
Googleカレンダーの予定を、選択されてた日付について表示できるようにした。予定を取得するには、以下のようなリクエストを送る GET http://www.google.com/calendar/feeds/default/private/full?start-min=2006-03-16T00:00:00+09:00&start-max=2006-03-24…
前回で、GoogleのAuthCodeを取得できた。この情報をRecordStoreに保存するようにする。アカウント情報を入力するフォームは、単純にした。 package jp.dip.ettem.scheduler;import javax.microedition.lcdui.Form; import javax.microedition.lcdui.Item; im…
前回は、プロキシになるサーバ側のコードを作成した。今回は、このサーバを呼び出す部分を作成する。こんな感じでAuthCodeを取得する。 package jp.dip.ettem.scheduler;import java.io.IOException; import java.io.InputStream; import java.io.OutputStre…
loglyカレンダーと連携するためのHTTPのプロトコルの調査を終えた。SocketConnectionクラスを使用して試しにコードを書いて、サーバにアップロードをしてみたら、エラーの表示が... 調べてみたら、SocketConnectionは使ってもよい外部通信系APIになかった。(…
loglyカレンダーで要望を出してみたが、特に応答がない。他のサービスも探してみるが見当たらない。コーディングが大変になるが、HttpConnectionをあきらめて、SocketConnectionで行こうと思う。こうなると、HTTPに関する知識が必要になるので、調査を開始し…
Googleカレンダーだと、HTTPSでの通信が出来なさそうなので、Googleカレンダーとの連携はあきらめる事にした。だからと言って、外部のカレンダーと連携するのをあきらめるのは嫌なので、別のWebサービスを利用する事を考える。代わりのサービスとして、すぐ…
オフィシャル作者登録も完了して、外部との通信が許可されるようになった。早速、HTTPSの動作を試してみた。なんか、認証関係でエラーになるみたい。ググってみると、GoogleのSSLの証明書は、携帯のアプリでは使えないっぽい。弱ったなあ。以下のコードでテ…
S!アプリオフィシャル作者の登録が完了した。 郵送してから、作品の公開意思があるのかと、どのようなものを作るのかの確認のメールが来て、その返答をしたりしていた。郵送を含めて、期間は4日間で済んだ。 思ったよりも早かったけど、郵送はやっぱり面倒…
HTTPでの応答(特にヘッダ部)を解析する時に、行単位で処理したい事が多い。そのため、InputStreamから文字を行単位で読み込むクラスを作成した。Java SEの場合は、java.io.BufferedReaderというクラスがあり、それを使えばよいのだが、Java MEの場合は自分で…
Googleカレンダーと連携させるためのコードをテストしようと、エミュレータを動かすと、エラーが起きてしまう。 どうも、エミュレータではHttpsConectionクラスは使えないようである。 仕方がないので、アプリ・ゲットのS!アプリ ホスティングサービスを使用…
今回は、予定の操作方法について述べる。 予定の検索 予定の検索はいくつかの方法がある。 期間を指定して検索するには、以下の例のようなURLへのGET要求を送信する。 GET http://www.google.com/calendar/feeds/default/private/full?start-min=2006-03-16T…
Googleカレンダーでは、複数のカレンダーを扱う事ができる。これらのカレンダーは、以下の3種類に分類される。 プライマリ Googleカレンダーのアカウントを作った時に最初に作成される。 セカンダリ 追加の機能で作成されたカレンダー。 インポート 他のカレ…
Googleカレンダーでは、ユーザーの認証が必要になる。(別にカレンダーだけではなくて、ほとんどサービスで必要なんだろうけど...) 認証の方式は2つあるようだ。「ClientLogin」と「AuthSub」の2つの認証方式があるようだ。ClientLoginの方はデスクトップのア…
GoogleカレンダーAPIのベースになっている、Google Data A(GData)PIの基本的な部分について調べた。GDataでは、 情報を要求する時は、HTTP GETリクエストを送る。 情報を更新する時は、HTTP PUTリクエストを送る。 PUTが使用できない場合は、POSTを送り、ヘ…
ひとまず、GoogleでXMLのパーサの情報がないかを検索してみる。以下の解説記事が見つかった。 Sun Developer Networkの 記事 IBM developerWorksの 記事(kXMLの利用例が記載) ngphone.comの 記事 なんばりょうすけさんの J2ME 環境での XML パーサ 大体、200…
Googleカレンダーには、Google Calendar APIと 言うインターフェースが用意されている。Google Calendar APIはGoogle data API(GData) protocolというプロトコルをベースにしている。GDataは、Atomもしく はRSSというXMLをベース にしたフォーマットを使用し…
予定を携帯電話に入力して、保存するだけではつまらない。と言うか、そんな機能は今時の携帯電話には必ずあるし、その程度なら、自分でスケジュール管理ソフトを作ってみる気にはならなかった。 携帯で予定を管理する事の不都合は、仕事中に携帯に予定を入力…
前回の続き。Eventsクラスを作り、そこで予定の保存を行うようにする package com.ettem.scheduler;import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.DataInputStream; import java.io.DataOutputStream; import…
前回までで、予定の入力のフォームの表示はできた。次は入力された予定をカレンダーの下に表示するようにする。まず、EventFormクラスを修正して、予定の入力内容を充実させる。 package com.ettem.scheduler;import javax.microedition.lcdui.*;/** * 予定…
今回は、予定の入力画面を作ってみる。Formクラスを継承して、予定の入力画面を表示する。今回は単純に入力のフォームを表示するだけ。保存も何もされない。(なんじゃそりゃ...) まあ、少しずつ機能拡張していく方針なので少しずつ進めていく。EventFormと言…
スケジュール管理ソフトなのだから、予定を保存できないといけない。予定のデータを保存するにはいくつか方法があるが、一番手軽なRecordStoreクラスを使って保存する事にする。RecordStoreクラスを使用するにはjadファイルに使用するデータのサイズを定義し…
前回から、大分、間が空いてしまった。Blogに書くのも、結構時間がかかるので、とにかくソフトの完成だけを目指そうかと思っていた。でも、検索エンジンにも引っかかるようなので、続けていこうと思う。まさか間違いの指摘をされるとは...さすがに、月単位で…