2008年6月13日金曜日

Skype4Java Mac版新バージョン完成!

Skype4Javaは上位のアプリケーション向けAPIと、下位のSkypeとの通信APIからなっています。

Skypeとの通信は各OSごとに仕組みが異なるため、それぞれ異なった実装となっています。
  • Windows (Windowメッセージを用いて通信)
    • C言語 + JNIでWin32を用いて実装
    • SWTのOSクラスでWin32を用いて実装
  • Linux(DBus、X11メッセージのいずれかを用いて通信)
    • C言語 + JNIで実装
  • Mac(Skype.frameworkを用いて通信)
    • C言語(Carbon) + JNIで実装
Linux、Mac版はBart氏に実装していただいたのですが、今回Mac版を新規に作り直しました。
実際の案件でSkype4Javaが必要となったのですが、既存のMac版では品質面で問題があったためです。

新バージョンでは、以下の改良を加えています。
  • メモリリーク問題の解決
  • 初期化と接続が一体になってしまっていて再接続ができない問題の解決
  • 長い文字列がやりとりされた場合に途中で切れてしまう問題の解決
  • 日本語が文字化けする問題の解決
  • 障害時に例外を通知する仕組みの追加
  • 効率的なメモリ管理の実現
  • isRunning()、getInstalledPath()メソッドの追加
  • イベントループをon/offできる機能の追加
  • Skype.frameworkをシステムフォルダに実行時にインストールしない形に変更
試してみたい方は、CVSからチェックアウトしてお使いください。