タグ

ブックマーク / dsas.blog.klab.org (4)

  • iPhone 用アプリ「ExifSafe」について : DSAS開発者の部屋

    先日の記事 「Exif データにアクセスするコードを自作してみる」 では、よく知られた存在でありながらプログラムを書く際にブラックボックスとして扱われがちな Exif の仕様と構造の整理を行い、既存のライブラリへ依存せずに Exif データを操作することを目的に作成したコードを紹介しました。当初はパーサとしての機能がメインでしたが、後日以下の機能を実装しました。 所定の IFD の削除・追加 Exif タグフィールドの削除・追加・変更 Exif サムネイルデータの取得 また、このコードを実際に使って次のような iPhone 向けアプリを試作してみました。 「ExifSafe」という名前をつけています。 アルバム上の所定の画像に含まれる Exif データを一覧表示 Exif データに GPS 位置情報が含まれる場合はマップで撮影地点を表示可能 画像をメールで送信 Exif データを丸ごと削除

    iPhone 用アプリ「ExifSafe」について : DSAS開発者の部屋
  • WebSocket アプリの負荷分散 : DSAS開発者の部屋

    最近 SPDY と WebSocket がアツいですね。 再来週の SPDY & WS 勉強会 も、定員100名に対して 参加者が 247 名とかなりアツいことになっています。 その予習というわけでもないですが、最近 WebSocket を実サービスへの 導入方法を考えながら遊んでいたので、 WebSocket の負荷分散方法について 考えていることを書いておこうと思います。 ステートフルな WebSocket アプリケーション HTTP サービスは基的にステートレスな実装になっており、リクエストが来るたびに DBサーバーや memcached などのバックエンドから情報を取得して返していました。 この構成では Web アプリ自体は完全にステートレス化することができているので、 負荷分散機はラウンドロビン等のアプリケーションを無視した負荷分散をすることができました。 しかし、 WebSo

    WebSocket アプリの負荷分散 : DSAS開発者の部屋
  • Android のプッシュ通知用コネクションに関するメモ : DSAS開発者の部屋

    Androidプッシュ通知機構(GCM, 旧 C2DM)は有用なしくみですが、オープンソースではないソフトウェア要素が関わっているためか内部仕様に近い情報をあまり見かけないのが残念です。手元での観察結果をもとにプッシュ通知で使用されるネットワークコネクションまわりの情報をいくつかまとめてみました。 まとめ Android 端末上の com.google.process.gapps プロセス は mtalk.google.com:5228 へ TCP コネクション [A] を張る (通常は 5228 番ポートだが 5229, 5230 番ポートが使用される場合もある) com.google.process.gapps プロセスは基的に [A] をずっと張りっ放しにしており接続維持のため無応酬 15分ごとに Keep-Alive パケットを流す GCM, C2DM のプッシュ通知はいずれ

    Android のプッシュ通知用コネクションに関するメモ : DSAS開発者の部屋
  • DSAS開発者の部屋:Android アプリケーションが起動するまでの流れ

    プログラム開発のために Android 上でアプリが起動するまでの過程を調べてみました。備忘をかねて、ソースコードをひと通り追跡した記録をここに控えます。 まとめ ※クリックすると大きな図が開きます Zygote(ザイゴート)プロセスは、Android システムブート時に起動し DalvikVM 体と Android プログラムの実行に必要なダイナミックリンクライブラリと Java のクラスライブラリをロードした状態で待機する常駐プロセスである Zygote プロセスの目的は、同プロセスを fork することによりプログラム実行用のプロセス環境を素早く効率的にシステムへ提供することにある UNIX ドメインソケット /dev/socket/zygote が Zygote プロセスへのインターフェイスであり、同ソケットにプロセス生成要求を送出すると Zygote はプロセス fork を実

    DSAS開発者の部屋:Android アプリケーションが起動するまでの流れ
  • 1