かみやんの技術者ブログ

主にプログラムの話です

ibisMail for iPhone ver.1.2.0申請

昨夜、ibisMail for iPhoneのver.1.2.0の申請をしました。現在、落ちる等の致命的不具合が発生しているお客様、大変ご迷惑をおかけしまして申し訳ございません。順調にいけばあと1週間ほどでAppleから認可が下りるかと思います。
今回も何名かの方がAdHoc配布による協力、また何名かの方が自宅メールサーバ、自社メールサーバ等にテストアカウントを作っていただいて協力していただきまして、どうしても社内で発生しない不具合の修正ができました。大変ありがとうございます。

前回のバージョンアップはリリースから6日で緊急バージョンアップしましたが、今回は3週間ほど修正に時間を取りました。人によってはもっと直してからバージョンアップせよという方もいれば、バージョンアップ間隔が長いという方もおり、なかなかバランスが難しいところです。

今回のバージョンアップの目玉は、ZIP展開機能と、起動時パスワード、SMTPでSTARTTLSコマンド対応が主なところです。

私は、初めてiPod touchで、Apple製のMailをみたときに、「振り分けが欲しい」「ZIP展開が欲しい」「起動時パスワードが欲しい」「HTMLメールの表示は怖い」「全既読機能が欲しい」と5大要求がありました。

振分について:私自身は、会社のメールが日に400通ほどなのですが、POPサーバであるため、Apple製メールでは、200通しか保存できないため半日も持たないということで、不便でした。ibisMailは、フォルダごとに最大1000通保存できるため私の使い方では十分足りています。

ZIP展開が欲しい:Apple製MailでWord, Excel, PowerPoint, PDFが閲覧でき、大変感激したのですが、転送量を減らすためにZIP圧縮しましょうみたいな流れが残っているため、社内のメールの多くはZIPファイルが流通していました。ZIPの中はWord, Excel, PowerPoint, PDFだと分かっているのに見れない。これは不便でした。

起動時パスワード:iPhoneにはOS全体として4ケタのパスコードでロックできますが、使うたびにロック解除は面倒でおそらく多くの人が使っていないと思います。でもメールだけはロックしたいなという人も多いかと思います。社内の機密情報もApple製Mailで受信できるので。でもAppleのポリシーとしてOSにロックがあるのに、その上Mailにロックをかけるのは美しくないと考え実装しないであろうと思いました。

HTMLメールの表示:Apple製メールを初めて見たときに、HTMLメールがそのまま表示され、text/plainでみる設定がないことに驚きました。PCのメールソフトのいくつかは、HTMLメールの表示機能により、フィッシング詐欺や、システムが持っているWebレンダリングエンジンのバグやOSの画像表示ルーチンの不具合(バッファオーバーランなど)をついた乗っ取り等の事故がよく発生します。ibisMailは、安全のためtext/plainを優先して表示し、必要のあるメールはタップでHTML表示にするようにしました。表示しただけで乗っ取られる可能性もあるので、Apple製Mailでは迷惑メールは開かないようにした方がよいです。

全既読機能:Apple製のMailには、1通づつ本文を読むと既読になる機能しかありません。日に何百通も受信している人は、なにもiPhoneですべてのメールを読むわけではありません。SubjectやFromをみて一部のメールを見ることになると思います。そして一括既読化ボタンは、前回の受信でどこまで読んだかの目印になります。必要なメールを読んで、全既読化ボタンを押してibisMail終了。これで次回起動時は、どこから読めば良いかが分かります。

下記、いずれ製品ページにも載りますが、まずはこの場にも書いておきます。

ver.1.2.0へのバージョンアップ内容

■新機能・改善

  • zip ファイル展開機能追加(パスワード付きzipに対応(パスワードはPKWARE ver.2フォーマットのみ))
  • 起動時パスワード機能追加
  • 設定で、受信サウンドと送信サウンドを選択またはOFFにできる機能を追加
  • SMTPでSTARTTLSに対応(Hotmailso-netの送信ほか)
  • 自己署名認証のSSL/TLSのサーバに対応(自前メールサーバの対応)
  • 添付ファイル閲覧画面で、テキストファイル閲覧の際、右上ボタン押下で文字エンコーディング変更を可能にした
  • dtiの送受信に対応、OCNの送受信に対応、lolipopの送受信に対応、Dovecotメールサーバに対応

■不具合修正

  • 起動処理を0.05秒高速化
  • HTMLのみのメールは添付ファイルとするように変更(HTMLのみのメールが本文画面に表示されHTMLソースが表示されていた問題の修正)
  • 送信箱の同期を廃止。既に同期しているものは、解除と同時にローカルからメッセージを削除するようにした。(メールサーバによっては、送信済みメッセージが送信キューに入ってしまって大量にメールが送られる場合があった問題の修正)
  • i.softbankで既読、返信マークが正常に同期していなかった問題の修正
  • フォルダ名入力アラートでiPhoneを回転させるとOKボタンが押せなくなりアプリを終了する以外に方法がなくなるため、ソフトウェアキーボードの Done ボタン押下で入力完了に修正
  • デコードに失敗した本文を空でなくオリジナルのまま表示するように変更(本文が空になる代わりに文字化けの文字列が本文画面に表示されるよう変更)
  • 画像閲覧の際、大きい画像の表示中にiPhoneを回転させるとビューサイズがそのままだった問題を修正
  • 本文閲覧画面で上下矢印ボタンでメッセージ移動後、iPhoneを回転させると画面が崩れる問題の修正
  • 新規メッセージ作成画面で、アドレス欄に文字が入っているときはクリアボタン(×ボタン)を右に出すよう変更
  • メッセージ本文画面でタップしたときに行が青くなる問題の修正
  • メッセージ本文画面でurl認識で、;と|を継続して認識範囲とするよう修正(Google Mapなど)
  • メッセージ本文画面で添付ファイル名の表示でファイル名が長くても拡張子が表示されるように変更
  • フォルダ名入力のアラートの中のテキストフィールドの高さを25pxから28pxに変更、テキストフィールドの枠を追加
  • 設定画面系で横ビューのときにスイッチやテキストフィールドを右寄せに変更
  • 設定画面系で右に>がついている行以外は、青い選択状態にならないように変更
  • 不具合報告アラート追加
  • htmlの添付ファイル閲覧で、レイアウト幅を600pxに変更(字が小さすぎる場合で、特定の場合に改善)
  • htmlの添付ファイル閲覧で、MIMEパートのContent-Typeのcharset指定をHTML内のcharset指定より優先(文字化け改善、YouTubeまぐまぐからのメールなど)
  • htmlの添付ファイル閲覧で、quoted-printableの特定の条件のときに文字化けする問題の修正(Appleから来るメールの一部など)
  • Subjectで途中から文字化けする問題の修正。(楽天の一部のメールなど)
  • Subjectでスペースが_で表示される場合がある問題の修正
  • SMTP認証の判断にEHLOのレスポンスに目的の認証があるかどうかのチェックを追加
  • APOPチャレンジがあってもAPOP非対応のサーバがあったので対応
  • SMTPサーバからのレスポンスが複数回の時に、正しいにもかかわらずエラーと判断してしまっていた不具合を修正
  • IMAPのPLAIN認証のパターンをもう一つ追加
  • IMAPのフォルダツリー構築でアクセス許可がないフォルダを作成しないようにした
  • IMAPのNOOP,LOGOUTのコマンドにもコマンドサインを追加した
  • IMAPのパスワード認証でサーバのエラーレスポンスを一部認識していなかった問題を修正
  • IMAPのパスワード認証でパスワード、ユーザ名が長過ぎた場合にログインできなかった問題を修正
  • IMAPでメッセージ移動に失敗した時に移動先フォルダにできる添付IDを持つメッセージが原因で、それ以降のメッセージが取得できなくなっていた問題を修正
  • アカウント追加の自動認識機能で認識した認証タイプが保存されない場合があった件を修正(OCNほか)
  • アカウント追加の自動認識後の認証タイプが適切でなかった場合、次回ログイン時に適切なものに変更する処理を追加
  • IMAPの下書き保存で、他のメーラで見た時にヘッダ部も表示されていた問題を修正
  • IMAPでフォルダ数が多い時に落ちる場合があった問題を修正
  • IMAP一括コマンドのレスポンスが特殊なサーバに対応
  • POPサーバに大量にメールが残っているときに、全部受信せずに最新X件の設定数だけ受信するように変更
  • IMAPメッセージ受信でBODYSTRUCTUREの特定の形式で落ちる問題の修正
  • IMAP,POPでメッセージ受信中にエラーがあってもタイムアウトやキャンセルでなければ受信を続けるように変更
  • IMAPのレスポンス終了判断のメソッドで落ちる場合があった問題を修正
  • IMAPのNOOPとQUITに排他処理がもれていた問題を修正
  • SMTPのMessage-IDに不正な文字列の時があるのを修正
  • Content-Transfer-Encodingの指定がない添付ファイルの中身が空になっていた問題を修正
  • 本文のはずのTEXT/PLAINが添付ファイルとなっていた場合があった問題を修正
  • IMAPメッセージ受信で一部のメール(softbankauなどからのメール)が取得できていなかった問題を修正
  • IMAPでメッセージ移動後のUIDが適切でない場合があった問題を修正
  • 複数メッセージ受信中に振り分けなどのImaplog再生でSELECTが外れて受信に失敗していた問題を修正
  • 新規メッセージ作成画面に遷移中に落ちる問題を修正
  • フォルダ名がアスキー文字とそれ以外の組み合わせだった時に落ちる問題を修正
  • AOLなど一部のメールサービスで最初の数通以降受信できなかった問題を修正
  • fastmail.fmなど一部のメールサービス本文や添付ファイルの最後に余分な文字列が入っていた問題を修正
  • 新規アカウント作成の際、送信サーバのユーザとパスワードが空の場合はPOP before SMTPとみなすように変更(lolipopなど)
  • タイムアウトの設定を変更。新規アカウント作成の自動認識時を20秒、それ以外を60秒。
  • 送信時に件名のエンコードに失敗し空の文字列になる時がある問題を修正
  • 空の本文送信で落ちる問題を修正
  • 作成したメッセージの件名が改行ボタンを押していないと適切でない文字列になる問題を修正
  • 特定のサーバで、特殊フォルダがローカルフォルダを指すとその後サーバ上のフォルダを選べなくなる問題を修正
  • dtiで新規アカウント作成の自動認識処理が適切に行われるように修正
  • 同期していないフォルダへのメッセージ移動の際にImaplogが作成されないように修正
  • IMAPでメッセージのUIDが空の時に落ちる問題を修正
  • 新規メッセージ作成時に宛先を入力すると落ちる場合があった問題を修正