2014年11月23日日曜日

アプリデータ保存用フォルダ名

アプリからデータを保存するフォルダを作成する場合、
気をつけなければいけないことに気付いた。

例えば、『写真』というAndroid標準アプリは画像データを表示する際は全てのデータの一覧を表示するが、
まずデータがあるフォルダの一覧を表示するものも多い。
有名どころだとLINEは添付画像を選択する際は、まずフォルダの一覧が表示される。

当プロジェクトでは、画像データを扱うアプリを2つリリースしているが、
画像のデータは、アプリ用フォルダを作成し、その下に保存画像用フォルダを作成してそこに保存している。

このとき保存画像用フォルダ名に同じ名前を使っていたため、
前述のLINEや、その他画像を扱うアプリからデータにアクセスする際
どちらのアプリの画像フォルダなのか分かりにくく、ユーザビリィティが良くない。

アプリデータ保存用フォルダ名はユーザーが識別しやすい名前にしておくべきだ。
今後の開発ではしっかり実施していき、先にリリース済みのアプリについては改修予定

2014年11月20日木曜日

TegakiMemoバージョンアップ

【バージョン2.0】
  • タブレット対応しました。
  • メモ描画時のヒストリーバック機能を追加しました。
  • premium版機能を追加しました。
-premium版機能-
  • 画像を取り込んでの描画
  • 描画色を4色追加

2014年11月15日土曜日

SilentCamをバージョンアップ

バージョン 2.1での変更点は下記の通り
  • 画像の日付がずれる不具合を修正
  • 英語対応
追記
画像の日付がずれる現象については、Javaの仕様によるハマりどころでもあったので内容を記すと
画像の日付変更はCalendarクラスのsetメソッドで行っていたが、
引数の指定が、年や日時は指定したい日時をそのまま指定すればよいが
月のみ0~11で指定するという仕様になっていた。
これを知らずに日付指定を行っていたがために、
画像の日付が本来の日付より1ヵ月先となってしまっていた。

また月の部分の引数に12が入った際、エラーとならず0扱い
つまりは1月になっていた。
試してはいないが%12で取って1を加えて月としている気がする。
エラーが発生しなかった事でバグの発見が遅れる結果となった。

2014年10月15日水曜日

SilentCamをバージョンアップしました。

バージョン2.0.3 での変更点は下記の通りです。
  • 画像管理設定をSilentCamのみでの表示にしているにもかかわらず、一度ごみ箱に入れた画像を戻した画像が他アプリから見えてしまうという不具合があり、修正しました。
  • バージョンアップ後の初回起動時に、不具合により他アプリから見えてしまっている画像を見えなくする処理を行います。

2014年10月1日水曜日

特定端末でのカメラプレビューの歪みの問題を解消

先の記事の通り、SilentCamについて
特定端末でカメラプレビューに歪みが出ていたのを解消した。

結論から言えば、原因は2つ。
まず一つ目が、
端末画面の横幅と縦幅を取得した際
どの側面を縦横とするかが端末によって違ったという点。
これはGALAXY S IIIで起きていた歪みの原因であった。

SilentCamの検証に使ったスマホ端末8機種の内、
7機種(日本メーカー製)はスマホを持ったそのままの方向で縦横。
残り1機種、GALAXY S IIIはその逆だった。つまり短い側が縦で長いほうが横。

これはGALAXY特別のおかしさかもしれないが、他にそういう端末もあるかも知れず
また、今後タブレットにも対応させるといった時のことも考え、どちらであっても柔軟に対応できるように実装した。


二つ目が、端末のカメラプレビューの対応サイズ。
これはCamera.Parameters..getSupportedPreviewSizes()メソッドにて取得でき、
戻り値はandroid.hardware.Camera.Sizeのインスタンスのリストとなっている。
このリストでは、概ね最初の要素がディスプレイサイズとなっている場合がほとんどで
index0をプレビューサイズをするという所謂ハードコーディングをしていたが
中にはそうではない場合もあったので、
取得した要素を全て検証し最適なものを適用するという実装にした。

以上で、把握してはいたものの修正できていなかったSilentCamの不具合を解消できた。

また今回、色々な端末のデータを取得する必要があったので、
Android端末を持っている方達にご協力いただいた。 その際、こちらで各端末をPCにつないでログを取るといったことができないため
Display Detail Checlerという
前述の事項で言及したような、端末の各値をスマホ側で確認するためのアプリを作成し
これを使ってデータを収集した。

なお、需要があればと思い、Google Playにて公開している。
ディスプレイ詳細取得 D.D.Checker