芋煮 0.9.7
0.9.7をリリースしました
機能拡張
・下書き、送信済みメールの管理
・スター済みメール以外を全て削除する機能を追加
・送信結果の通知をステータスバーで行うように変更(従来の方法と設定で切り替え)
« 2009年07月 | メイン | 2009年09月 »
0.9.7をリリースしました
機能拡張
・下書き、送信済みメールの管理
・スター済みメール以外を全て削除する機能を追加
・送信結果の通知をステータスバーで行うように変更(従来の方法と設定で切り替え)
0.9.8をリリースしました
・メールが複数の宛先に同報されている場合に、全員へ返信することができるようにした
・内部構造を見直し、アプリのファイルサイズをコンパクトにした
その他、細かな調整、バグ修正
芋煮0.9.9をリリースしました。
機能追加
・メールの転送
主な不具合修正
・定期チェックが止まることがある現象の対策
・リストの最大件数のチェック方法が不十分だった点を修正
その他細かな不具合修正
変えるなら、まずAndroidから。Androidの中にいる小人たちが仲良くしてたら、そのAndroidを持っている人同士も仲良くなれたりしませんか?人同士が仲良くなると、やがて地球が平和になったりしませんか?そんなことないですかね?そうなるといいなあ。
何が言いたいのかというと、Androidでのアプリは助け合いながら動くんです。効果的に助け合うには、アートな感覚が必要なのだと思いますが、試すだけならすぐできます。これくらいならすぐにできるよ、という例を、俺アプリを基に示したいと思います。
俺アプリ「Jot」
このアプリ(Jot)は、簡単にメモしたい時に使うツールです。僕が自分のためだけに作ったシンプルなアプリです。外出時に何かを思い出したり、面白いことを思いついたりした際に、そのことを忘れないようにするために使っています。
・今まで書いたメモのリスト画面

・メモを書く画面

入力すると勝手に保存されるので、書いてからいきなりアプリを落としても大丈夫です。また、メモはSDカードの中にテキスト形式で保存していますので、PCなどへ取り出せます。
これだけの機能しか実装していません。コーディング時間は数時間です。僕はコーディング速度がそれほど速くありませんが、もっと速い人なら1時間程度で作ることができるでしょう。
Jotにはもうちょっとだけ機能がついてます。
例えば、WEBをブラウズしているときなどに、「あーこれメモしたい」と思ったら、
・メモしたい文字を選択してコピー

・Simejiの「マッシュルーム」ボタンを押してJotを呼ぶ


と、メモれます。

メモをメールで送ることもできます。メモの内容がメール本文につきます。どんなメールクライアントからでも送ることができます。Gmailでも、芋煮でも、あるいはほかのメールクライアントでもOKです。
・・・でもこれらは、Jotそのものに機能があるわけではありません。Jot君はあまり多くのことができないので、色んなことができる他のアプリさんたちに助けてもらっているんです。アプリたちが各々の得意分野で力を発揮しあいながら、利用者のためにひとつの機能として提供してくれてるんです。なんだかほのぼのとして、可愛いとすら思えます。
アプリには、
「オレはこんなことができるんだぜ!」
「私はこれとこれとこれが得意よ」
「僕に何か頼みたいなら言ってね」
のような宣言をしておくと、他のアプリを助けることができます。Simejiはそのように配慮してくれているので、Simejiから力を貸してもらうことができます。こういうのって楽しいですよね。もちろん、中には、○○ができる力があるのに、宣言せずに黙ったままのアプリもあります。僕もそうですが、ついついそういうアプリを作ってしまいがちだと思います。でもこれって、近くに困っている人がいるのに見て見ぬふりをして助けてあげないのと同じような感じですよね。
というわけで、Jotも口を開いてます。
で、Jotにメモれるようにしています。
Action Intent.ACTION_SEND Scheme "jot" メモ本文のキー Intent.EXTRA_TEXT
一応apkを(Jot_001.apk)
芋煮 0.9.10をリリースしました。
機能追加
・標準的な絵文字を表示できるようにした
・ウィジェットを追加した(暫定)
・差出人を連絡先に登録できるようにした
・差出人などがアドレス帳に存在する場合に、氏名を併せて表示するようにした
・メール送信時のエラーチェックを少し拡充した
絵文字の表示は、かなり多くの方からご要望を頂いたので、ちょっと頑張ってみました。ですが、あくまでも標準的な絵文字の表示のみです。デコメ絵文字は表示できませんし、絵文字が付いたメールを書いたり送ったりすることもできませんのでご注意下さい。絵文字の画像は「My First HDML」様(http://www001.upp.so-net.ne.jp/hdml)よりお借りしました。ありがとうございます。有用なコンテンツを広く公開して下さっていることに心より感謝します。以下が、現在の芋煮が表示可能な絵文字の全てです。
【補足】ステータスバーへの常駐について
芋煮が動いているかどうかがわかるように、ステータスバーにアイコンを常駐させてほしい、というご要望を複数の方から頂いています。この機能は、ずいぶん前から検討はしているのですが、芋煮が意図せず殺されたことを全てのケースで確実に知る方法がないため、ケースによっては芋煮が動いていないにもかかわらずステータスバーにアイコンが出たままになってしまうことがあります。そのため、この機能の実装は見送っています。代わりというわけではありませんが、ホーム画面に芋煮のウィジェットを置けるようにしてみました。とりあえず、前回のチェック(確認)時刻と、定期チェックの状態、未読の有無 を表示しています。
ウィジェットの追加は簡単です。
ホーム画面を長押しするとダイアログが表示されるので、「ウィジェット」を選択します

追加可能なウィジェットが表示されるので、ここで「芋煮」を選択します。

するとホーム画面に芋煮のウィジェットが表示されます。

ウィジェットは、ステータスバーよりも幅は取りますが、芋煮の定期チェックの状態はわかるような気がします。また、私の周囲では芋煮のアイコンが著しく不評なのですが、ウィジェットをクリックすると芋煮が起動するので、ウィジェットを使えばあの芋アイコンを見ずに済むというメリットもあります。アイコンがかっこ悪いのは私の力不足です。うまく作れなくてすみません。
なお、ウィジェットは、とりあえず実装しました。という感じなので暫定的な機能の位置づけです。本当に便利なのか、正しく動いているか、また電池の消費量が許容できるか、少し様子を見てみます。
芋煮 0.9.11をリリースしました。
不具合修正
・ホームアプリが落ちるとウィジェットの表示が消えることがあった問題を修正
バグはあるだろうと思っていましたがやっぱりありました。
機能追加
・メール送信後は定期チェック間隔を一時的に短くする機能の追加(設定により選択可能)
メールを送信したら返信が来るかもしれないので、返信を早く受け取れる機会を増やすためです。設定を有効にすると、メールを送信してから約15分間だけ、90秒程度の間隔でチェックするようになります。15分たつと元の間隔に戻ります。
芋煮=>IMoNi 0.9.12をリリースしました。
機能追加など
絵文字の入力は、とても簡単です。メールを作成する画面で、メニューから「絵文字入力部の表示」を選びます。

すると、絵文字の入力ツールが表示されますので、使いたい絵文字を選択すると、本文などに絵文字を挿入することができます。
ちょっと絵文字が小さいため文字のサイズと合ってませんが、、とりあえずこれで。。というか、少し使ってみましたが絵文字の入力も今の方法では選ぶのが大変ですね。絵文字の選択に関する操作には改良できる余地が多々ありそうです。
不具合修正
・メールの本文を表示する画面で、メールによって本文の右端が欠けてしまう(読めない)問題を修正しました
・メールの本文を表示する画面からリストの画面へ戻ってきた時に、前のリストの位置を表示するように修正しました
IMoNi(芋煮) 0.9.13をリリースしました。
・絵文字の入力方法の改善(ただし現状はまだ完成版ではありません、ちょっと今日は詳細に書く時間がないので、また改めて説明します。)
・絵文字のサイズがテキストのサイズに合うように
・絵文字を使ったメールの返信、転送時にも絵文字が出るように
・返信時はフォーカスを本文に
・その他細かな不具合の修正
IMoNi(旧:芋煮)に数多くのコメントとご要望を頂きありがとうございます。頂いたご要望については全て記録しています。できるものから少しずつ対応していきたいと考えています。頂いているご要望全てを実現できているわけではありませんが、主要な機能はだいたい実装し終えたと判断し、今回のリリースで1.0.0にすることにしました。
・絵文字を入力する画面「Emoji Picker」の本格導入
・メールを作成する画面の「送信」ボタンと「下書き」ボタンの位置を逆に
・本文を表示する画面の文字色を白に
・本文スクロール時にタップしても文字が暗くならないように
・新着メールをステータスバーへ通知する際に、送信者が連絡先に登録されていればその氏名を表示するように
・その他、細かな調整や修正
以降で、絵文字を入力する仕組み「Emoji Picker」について説明します。
1. 絵文字入りメールの作成
メールを作成する画面を開き、メニューから「絵文字を入力」を選択すると、絵文字を入力する画面が開きます。これを「Emoji Picker」と呼びます。
ボタンの下に
・選択した絵文字
・最近使った絵文字(5つ)
・選べる絵文字全ての候補
の順で並んでいます。
絵文字は連続入力することができます。「入力した絵文字を反映」ボタンを押すと元の画面に戻り、それまでに選択した絵文字たちがフォーカスがあたっていたテキスト入力エリアに渡されます。

2. simejiとの連携(mashroom)
Emoji Pickerは、IMoNiの外からも利用することができます。まずはsimejiとの連携です。試しにGmailアプリのメール作成画面を表示している状態でsimejiの「マッシュルーム」ボタンを押します。

「Emoji Picker」を選択します。

Emoji Pickerが開きますので、IMoNiで絵文字を入力するときと同じように絵文字を選択します。Gmailの画面に戻ってくると、絵文字が四角い文字として表示されています。読むことはできないのでちょっと微妙ですが、絵文字のコードは確かに入力されていますので、このまま送ることができます。

3. 他のアプリとのマッシュアップによる連携
Emoji Pickerと連携できるのはsimejiだけではありません。例えば、あなたが今開発されているアプリからEmoji Pickerを使うこともできます。Emoji Pickerとの連携は、Intentを使います。
・Emoji Pickerを呼び出すIntentの設定項目
| アクション | net.grandnature.android.emojipicker.ACTION_PICK_EMOJI |
| カテゴリ | net.grandnature.android.emojipicker.CATRGORY_DOCOMO_DEFAULT |
・コード例
final String ACTION = "net.grandnature.android.emojipicker.ACTION_PICK_EMOJI";
final String CATEGORY = "net.grandnature.android.emojipicker.CATRGORY_DOCOMO_DEFAULT";
・・・
Intent i = new Intent(ACTION);
i.addCategory(CATEGORY);
startActivityForResult(i, 1);
これでEmoji Pickerを呼び出すことができます。Emoji Pickerで選択された絵文字は、文字コードと画像データに分けてIntentに詰められて返ってきますので、その内容を取得すればOKです。
| 種類 | 型 | キー名 |
|---|---|---|
| 文字コード | String | KEY_PICKED_EMOJI_CHAR_CODES |
| 画像データ | List<byte[]> | KEY_PICKED_EMOJI_ICONS |
KEY_PICKED_EMOJI_CHAR_CODESには、入力された絵文字の文字コードが順番に入っています。KEY_PICKED_EMOJI_ICONSには、入力された絵文字の画像データ(byte配列)が順番に入っています。例えば、Emoji Pickerを呼び出したアクティビティのonActivityResultメソッドで、以下のように記述すれば取得することができます。
final String KEY_PICKED_EMOJI_ICONS = "KEY_PICKED_EMOJI_ICONS";
final String KEY_PICKED_EMOJI_CHAR_CODES = "KEY_PICKED_EMOJI_CHAR_CODES";
・・・
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode == RESULT_OK) {
List<byte[]> icons = (List<byte[]>) data.getSerializableExtra(KEY_PICKED_EMOJI_ICONS);
String charCodes = data.getStringExtra(KEY_PICKED_EMOJI_CHAR_CODES);
int len = charCodes.length();
for (int i = 0; i < len; i++) {
InputStream in = new ByteArrayInputStream(icons.get(i));
// i番目の絵文字の画像
Drawable image = new BitmapDrawable(in);
// i番目の絵文字の文字コード
char code = charCodes.charAt(i);
・・・
}
}
}
Emoji Pickerを利用している簡単なサンプルプログラム(HelloEmoji)を作ってみました。UIはかなり手抜きですが、受け渡しの仕組みはつかんでもらえるかと思います。
・「絵文字を選択」ボタンを押すと、Emoji Pickerを呼び出します。
・Emoji Pickerから戻ってくると、Emoji Pickerで選択された絵文字の画像を表示します。
・絵文字の画像にタッチすると、その絵文字の文字コードを表示します。
このサンプルのEclipseのプロジェクトをそのまま圧縮して置いておきます。(HelloEmoji.zip)
IMoNi 1.1.0をリリースしました。今日は詳細に書く時間がないので、簡単に書きます。
・メールの情報を他のアプリと共有する機能の追加
端末にインストールされている他のアプリケーションに対して、メールの情報をプレゼントする機能です。メールの本文を表示する画面のメニューから「共有」を選ぶことで利用できます。メールの情報は、テキスト形式の情報を扱える旨を表明しているアプリケーションに対してプレゼントできます。
・受信済メールをSDカードへエクスポートする機能、SDカードからインポートする機能の追加
アプリの再インストール(端末の初期化)時に、メールを失わないようにするための機能です。受信済メールの一覧画面のメニューから行えます。エクスポート、インポートできるのは受信済メールのみです。送信済みメールや下書きメールについては、まだ機能を設けていません。テストはしたつもりですが、もし万が一不具合があったらごめんなさい。
・受信済メールをフィルタする機能の追加
ある文字列が含まれるメールのみを表示する機能です。受信済メールの一覧画面で(HT-03Aであれば、端末右下にある)「サーチ(むしめがね)」ボタンを押すか、メニューから「メールのフィルタ」を選ぶことで利用できます。
以下は、その他の細かなものです。
・時刻の表示を24時間表記に
・下書きや送信済メールのリストから1件のメールの編集画面に行き、再度リストへ戻ってきた時に、前回表示していた位置を表示するように
・その他細かい修正、調整
2009.8.31 20:45頃 追記:
忘れてました。。
・メールを送る前(送信ボタンを押したとき)に、確認ダイアログを出せるように
誤送信してしまう方はお使いください。設定で切り替えられます。
・メール本文のどこかを長押しでクリップボードにコピーできるように