Android アプリ内に画像を保存する
Taketoma
Androidで画像を保存する方法としては以下の3パターンがあるかと思う
1)アプリ内に保存
2)SDカード内に保存
3)データベースに保存
自分のアプリでも1)が一番よく使っている。
SLAMDUNKLineの背景やTextIconCreaterIconPackでアイコンを保存しているのは
アプリ内保存です。
Handromemoは2)の方法でSDカードに保存している。
3)は試したことないけれどバイナリで保存できるはず、、、きっと。
1)の方法で画像を保存する方法はこんな感じで簡単。
保存した画像の読み込みも簡単
保存した画像の削除
1)アプリ内に保存
2)SDカード内に保存
3)データベースに保存
自分のアプリでも1)が一番よく使っている。
SLAMDUNKLineの背景やTextIconCreaterIconPackでアイコンを保存しているのは
アプリ内保存です。
Handromemoは2)の方法でSDカードに保存している。
3)は試したことないけれどバイナリで保存できるはず、、、きっと。
1)の方法で画像を保存する方法はこんな感じで簡単。
FileOutputStream out = null;
try {
// openFileOutputはContextのメソッドなのでActivity内ならばthisでOK
out = this.openFileOutput("image.png", Context.MODE_PRIVATE);
image.compress(Bitmap.CompressFormat.PNG, 100, out);
} catch (FileNotFoundException e) {
// エラー処理
} finally {
if (out != null) {
out.close();
out = null;
}
}
保存した画像の読み込みも簡単
InputStream input = null;
try {
input = this.openFileInput("image.png");
} catch (FileNotFoundException e) {
// エラー処理
}
Bitmap image = BitmapFactory.decodeStream(input);
保存した画像の削除
this.deleteFile("image.png");
この方法ならば、画像ファイルだけでなく
各ファイルなんでも保存できるので便利だし、
SDカード使用する際の権限等も不要。
6:45
Androidアプリ開発
,
SlamDunkLine
,
TextIconCreaterForADW
,
開発Tips
Android OSのバージョン別シェア
Taketoma
Android OSのバージョン別シェアって以下に載っているんだが
http://developer.android.com/about/dashboards/index.html
OSのバージョンの勢力図も刻々と変わってる。
1位 Gingerbread(2.3系) 55.8%
2位 Ice Cream Sandwich(4.0系) 23.7%
3位 Froyo(2.2) 12.9%
4.1のJelly Beanは 1.8%らしい。
Easy Sujiをインストールしている端末比率は以下で、
1位 Gingerbread(2.3系) 59.5%
2位 Ice Cream Sandwich(4.0系) 21.7%
3位 Froyo(2.2) 14.4%
Jelly Beanは 0.2%
Googleが出しているバージョン別シェアとあんまり変わらない。
Easy Sujiは国内にしか提供していないが
世界規模のシェアと変わらないところを見ると日本市場もICSが出回ってきた感じがする。
TextIconCreaterIconPackにしても
1位 Gingerbread(2.3系) 58.0%
2位 Ice Cream Sandwich(4.0系) 18.6%
3位 Froyo(2.2) 15.8%
4位 Eclair(2.1) 4.5%
5位 Jelly Bean(4.1) 1.98% ← かなり上がってきた
こんな感じなので、ICSがかなり普及してきた感じがする。
JellyBeanへのアップデートに関する話もちらほら出てるし、
そろそろ真剣にActionBarとFlagmentの勉強をせねばと思うようになった。
http://developer.android.com/about/dashboards/index.html
OSのバージョンの勢力図も刻々と変わってる。
1位 Gingerbread(2.3系) 55.8%
2位 Ice Cream Sandwich(4.0系) 23.7%
3位 Froyo(2.2) 12.9%
4.1のJelly Beanは 1.8%らしい。
Easy Sujiをインストールしている端末比率は以下で、
1位 Gingerbread(2.3系) 59.5%
2位 Ice Cream Sandwich(4.0系) 21.7%
3位 Froyo(2.2) 14.4%
Jelly Beanは 0.2%
Googleが出しているバージョン別シェアとあんまり変わらない。
Easy Sujiは国内にしか提供していないが
世界規模のシェアと変わらないところを見ると日本市場もICSが出回ってきた感じがする。
TextIconCreaterIconPackにしても
1位 Gingerbread(2.3系) 58.0%
2位 Ice Cream Sandwich(4.0系) 18.6%
3位 Froyo(2.2) 15.8%
4位 Eclair(2.1) 4.5%
5位 Jelly Bean(4.1) 1.98% ← かなり上がってきた
こんな感じなので、ICSがかなり普及してきた感じがする。
JellyBeanへのアップデートに関する話もちらほら出てるし、
そろそろ真剣にActionBarとFlagmentの勉強をせねばと思うようになった。
7:32
Androidアプリ開発
,
EasySuji
,
TextIconCreaterForADW
ApexLauncherでのTextIconCreaterIconPackの使用に関して
Taketoma
TextIconCreaterIconPackにてコメントを頂きました。
ApexLauncherでも使用できるように対応してほしいとのこと。
私もXperiaGXにおいて当初ApexLauncherを使用していました。
その時は、TextIconCreaterIconPackがApexLauncherでも使用できていました。
ApexLauncherで更新後すぐに強制終了が発生するアップデートがありました。
その後、すぐに修正版がリリースされたのですが
そのタイミングからTextIconCreaterIconPackが単体で使用できなくなっていました。
その為、一旦Playストアのアプリ説明に入れていた
動作検証ランチャーアプリからもApexLauncherを削除しました。
ApexLauncherのテーマアプリの作成方法が以下にあるので
読んでいたのですが、TextIconCreaterIconPackを使用できそうにないことが判明しました。
http://forum.xda-developers.com/showthread.php?t=1649891
ApexLauncherのアイコンパックは、
既にPNGファイルのアイコンをアプリに含めておき、
そのアイコン画像をApexが一覧表示し
選択可能にさせる仕様になっています。
ADWのアイコンパック(TextIconCreaterIconPack)は、
インテントの仕組みにより、画像を受け渡す仕様になっています。
ADWのアイコンパックでもアプリ内に用意した
PNGファイルから選択した画像を
インテントで渡すようになっていればAPEXでも使用可能なはずです。
但し、TextIconCreaterIconPackは
アプリ内にアイコン画像ファイルを持っているわけではありません。
入力された内容から画像(Bitmapクラス)を動的に作成し、
インテントの呼び出しアプリ(例えばADWLauncher)に渡しています。
この為、現在のApexの仕様ではどうすることもできない結論に至りました。
力不足で申し訳ありません。
追記 2012/10/30
Apex Launcherの最近のアップデートにより再度使用可能になりました。
ApexLauncherでも使用できるように対応してほしいとのこと。
私もXperiaGXにおいて当初ApexLauncherを使用していました。
その時は、TextIconCreaterIconPackがApexLauncherでも使用できていました。
ApexLauncherで更新後すぐに強制終了が発生するアップデートがありました。
その後、すぐに修正版がリリースされたのですが
そのタイミングからTextIconCreaterIconPackが単体で使用できなくなっていました。
その為、一旦Playストアのアプリ説明に入れていた
動作検証ランチャーアプリからもApexLauncherを削除しました。
ApexLauncherのテーマアプリの作成方法が以下にあるので
読んでいたのですが、TextIconCreaterIconPackを使用できそうにないことが判明しました。
http://forum.xda-developers.com/showthread.php?t=1649891
ApexLauncherのアイコンパックは、
既にPNGファイルのアイコンをアプリに含めておき、
そのアイコン画像をApexが一覧表示し
選択可能にさせる仕様になっています。
ADWのアイコンパック(TextIconCreaterIconPack)は、
インテントの仕組みにより、画像を受け渡す仕様になっています。
ADWのアイコンパックでもアプリ内に用意した
PNGファイルから選択した画像を
インテントで渡すようになっていればAPEXでも使用可能なはずです。
但し、TextIconCreaterIconPackは
アプリ内にアイコン画像ファイルを持っているわけではありません。
入力された内容から画像(Bitmapクラス)を動的に作成し、
インテントの呼び出しアプリ(例えばADWLauncher)に渡しています。
この為、現在のApexの仕様ではどうすることもできない結論に至りました。
力不足で申し訳ありません。
追記 2012/10/30
Apex Launcherの最近のアップデートにより再度使用可能になりました。
22:07
TextIconCreaterForADW
TextIconCreaterIconPack Ver4.7.1リリース
Taketoma
TextIconCreaterIconPackをVer4.7.1リリースしました。
【変更点】
・日本国外でアプリが強制終了していたバグを修正
(広告表示に関するプログラムのバグ)
【変更点】
・日本国外でアプリが強制終了していたバグを修正
(広告表示に関するプログラムのバグ)
TextIconCreaterIconPack Ver4.7.0リリース
Taketoma
TextIconCreaterIconPackのVer4.7.0をリリースしました。
【変更点】
・アプリ名を「TextIconCreaterForADW」から「TextIconCreaterIconPack」に変更しました。
ADWだけでなく、ApexLauncherやNova Launcherでも使用可能なことを確認したので
アプリ名を変更しました。
・バグ修正
1)アイコン選択時に強制終了するバグを修正
2)手書きアイコン作成でフリーズするバグを修正
・ICS(android4.0)対応
【変更点】
・アプリ名を「TextIconCreaterForADW」から「TextIconCreaterIconPack」に変更しました。
ADWだけでなく、ApexLauncherやNova Launcherでも使用可能なことを確認したので
アプリ名を変更しました。
・バグ修正
1)アイコン選択時に強制終了するバグを修正
2)手書きアイコン作成でフリーズするバグを修正
・ICS(android4.0)対応
・CreateIconPickerをメニューから呼び出すように変更しました。
(ApexLauncherでCreateIconPickerが呼び出されなかった為)
TextIconCreaterForADW ver4.6.0リリース
Taketoma
TextIconCreater For ADWをバージョンアップしました。
【機能追加】
①テキストの位置を追加
→中央、左、右からテキスト位置を選択可能にしました
②その他の設定にテキストアイコンモード設定を追加
→3つのモードから選択可能にしました
1.標準モード…今まで通りのアイコンを作成します
2.テキスト透過モード…背景からテキスト部分を切り抜いたアイコンを作成します
3.テキストの背景同化モード…テキスト部分を背景と同化させたアイコンを作成します
幾つかのバグを修正
【機能追加】
①テキストの位置を追加
→中央、左、右からテキスト位置を選択可能にしました
②その他の設定にテキストアイコンモード設定を追加
→3つのモードから選択可能にしました
1.標準モード…今まで通りのアイコンを作成します
2.テキスト透過モード…背景からテキスト部分を切り抜いたアイコンを作成します
3.テキストの背景同化モード…テキスト部分を背景と同化させたアイコンを作成します
幾つかのバグを修正
TextIconCreaterForADW ver4.5.0リリース
Taketoma
TextIconCreaterForADWを更新しました。
GoogleCodeで
Androidアプリの多言語化を助けるためのLibAndroTranslationというライブラリを発見しました。
http://code.google.com/p/libandrotranslation/wiki/Description
ユーザーに多言語化を手伝ってもらう為のプロジェクトで
TextIconCreaterForADWにも導入しました。
設定画面から「翻訳にご協力ください」のボタンを追加しています。
またApacheLicense 2.0で公開されているのでライセンスの表示も行っています。
翻訳機能の追加によりライブラリにSDカードの書き込み許可が増えています。
ご理解とご協力をお願いします。
SDカードの書き込み許可を増やしたので、
今まで分かりづらかった外部フォントのファイルをアプリ単体で作成するようにしました。
GoogleCodeで
Androidアプリの多言語化を助けるためのLibAndroTranslationというライブラリを発見しました。
http://code.google.com/p/libandrotranslation/wiki/Description
ユーザーに多言語化を手伝ってもらう為のプロジェクトで
TextIconCreaterForADWにも導入しました。
設定画面から「翻訳にご協力ください」のボタンを追加しています。
またApacheLicense 2.0で公開されているのでライセンスの表示も行っています。
翻訳機能の追加によりライブラリにSDカードの書き込み許可が増えています。
ご理解とご協力をお願いします。
SDカードの書き込み許可を増やしたので、
今まで分かりづらかった外部フォントのファイルをアプリ単体で作成するようにしました。
GoogleCodeにAndroidプロジェクトを公開
Taketoma
勉強がてらにやってみようと思っていた
オープンソースプロジェクトをApache License 2.0で公開してみた。
たいしたプロジェクトではないですが、
最近、TextIconCreaterForADWに導入してみたNumberPickerDialogを公開。
こんな感じで数値を入力する為だけのダイアログです。
ダイアログ表示時に最小値と最大値を指定できます。
最大値を超えて入力しようとすると数値がブルブルして入力できません。
数値は整数のみ対応しています。
Android標準のNumberPickerWidgetは、わざわざ数値を+1または-1していくしかないので
ちょっと使いづらい気がする。
電卓みたいにポチポチボタンを押す方が私は好みなので作ってみました。
他の方のAndroidアプリに使われたらちょっと嬉しいかも。
このGoogleCodeプロジェクトのリンクは以下から
http://code.google.com/p/taketoma-android-number-picker/
オープンソースプロジェクトをApache License 2.0で公開してみた。
たいしたプロジェクトではないですが、
最近、TextIconCreaterForADWに導入してみたNumberPickerDialogを公開。
こんな感じで数値を入力する為だけのダイアログです。
ダイアログ表示時に最小値と最大値を指定できます。
最大値を超えて入力しようとすると数値がブルブルして入力できません。
数値は整数のみ対応しています。
Android標準のNumberPickerWidgetは、わざわざ数値を+1または-1していくしかないので
ちょっと使いづらい気がする。
電卓みたいにポチポチボタンを押す方が私は好みなので作ってみました。
他の方のAndroidアプリに使われたらちょっと嬉しいかも。
このGoogleCodeプロジェクトのリンクは以下から
http://code.google.com/p/taketoma-android-number-picker/
21:33
Androidアプリ開発
,
GoogleCode
,
TextIconCreaterForADW
登録:
投稿
(
Atom
)


