2009-07-15

iPicasa ビューア

ケータイのPicasaアップローダーまで作ったので、ビューアの機能を折角だから追加しようと思う。
iモードから既に閲覧できるので、それよりは便利にしないと意味ないけどね。
で、Google Data APIをつかって画像データを取得するプログラムを書いてみた。

以下は、PhotoEntry に格納されているMediaContentのURIから、データを取得してファイルに保存するプログラム。同様のことをサムネイルのデータにも行っている。


for (PhotoEntry entry : photos) {
MediaContent content = (MediaContent)entry.getContent();

InputStream is = new URL(content.getUri()).openStream();
FileOutputStream os = new FileOutputStream("Photo"+count+".jpg");
int len;
while ((len = is.read(b)) > -1) {
os.write(b, 0, len);
}
is.close();
os.close();

MediaThumbnail mediaThumbnail = entry.getMediaThumbnails().get(0);
is = new URL(mediaThumbnail.getUrl()).openStream();
os = new FileOutputStream("Thumbnail"+count+".jpg");
while ((len = is.read(b)) > -1) {
os.write(b, 0, len);
}
is.close();
os.close();
}


これのファイルに保存するところを、ケータイからのリクエストを中継してあげれば、送ってあげるようにしてあげればいいわけです。

2009-07-04

iアプリ版picasaアップローダー公開

まだαバージョンぐらいのできですけど、iアプリ版picasaアップローダーを公開します。
折角公開するのでご意見、ご感想などいただけるとうれしいです。

URLはhttp://i-picasa.appspot.com/

J2MEでつかえる暗号化ライブラリ

ログイン/パスワードを簡単に暗号化できるJ2MEでつかえるライブラリを探してみた。
そこで見つけてたのがBouncy Castle Crypto。MIT X Consortium ライセンスで提供されるオープン・ソースのライブラリです。
ライブラリの使い方は、わかりやすくはないがiアプリでも僅かな修正で動作する。

このライブラリのお陰で、面倒な実装をしなくてすみました。

2009-07-01

認証プロセスの暗号化

今回、GAEを使って公共でつかえるようPicasaプロキシーを改修した中で、一番大きな改修は、認証プロセスの暗号化です。
ユーザー名/パスワードを平文で送るわけにもいかないと思い修正しました。簡単にいかなかった原因は、GAEがサポートしているSSLの証明書がdomonoのiアプリでは使えないということです。(GAEでSSLは使えます。appengine-web.xmlに<ssl-enabled>true</ssl-enabled>を追加するだけです)

そこで処理速度も考え、チャレンジ/レスポンス認証とDES暗号で認証プロセスだけを安全にするようにしました。(DES暗号のところは、いずれRSA暗号にしたいと思っています。)