投稿

Javaのフレームワーク Wicket 本を買ってみた。

イメージ
JavaのフレームワークのWicketの日本語本が出たというので買ってみました。 翻訳本とかではなく、書きおろしなので、記念買いといいますか、そんな感じで本屋で中身を確認することなく、ネットで買ったのですが、本代が気にならない方なら手元に置いておいて損はないと思います。 著者のブログ Wicketの開発環境を構築したりする暇はなく、通勤途中で全部読んでしまいましたが、通勤時に読むには集中する必要があるレベルの本で、ちょっときつかったです。 内容は、Strutsとの比較が多すぎるのがちょっとあれでしたが、比較的細かいレベルまで記載されており、無駄なページ稼ぎもなく力作となっています。 WicketによるWebアプリケーション開発本の感想 新人に、この本を渡して勉強しといてという感じに使うのは無理 1週間で出来る系本が別途欲しい (書いて出してほしい) 日本語を使う上での特有の問題の記載がすくないが、問題なく動くから記載がないということか? といったところです。 Wicketフレームワークを会社で採用するかは微妙な所です。結構好きな感じのフレームワークなのですが、以前Tapestryを使用していた時と同様、最大の難点は情報量の少なさと、将来の不安(普及するのか)ですね。 Share on Tumblr Tweet

Android Market Active installsの値がおかしい件

イメージ
Android Marketの中のロジックが変わったようです。 RSSReaderやPodcat等の設定は何も変えてませんが、この週末は、totalダウンロードの増加分の約8倍Active installsが増えていました。 Active installs数の増加がダウンロード数よりも増えることは常識的にありませんので、何かの間違いか、数値の意味合いの変更になったかのどちらかだと思います。 この数値に関しての詳細はどこにも記載されていませんので、現状では謎としか言えませんが、Android Marketの機能強化作業の影響ではないかと個人的に考えております。 何かわかったらまた書きたいと思います。 Share on Tumblr Tweet

Android MarketをPCから見る方法

イメージ
Android Market のページをPCから見てもトップ10ソフト等が表示されるだけで、詳しくどのようなソフトがあるのかは見ることができません。 通常は、実機上のAndroid Marketソフトを使用して見ますが、公開したソフトのコメントをちょっと見る時などは不便です。Android Marketの管理画面上にユーザから書かれたコメントや、開発者からのコメントを書き込みできると良いのですが、現在そのようにはなっていません。 従ってAndroid MarketをPCから見る方法がないかと良く聞かれます。PCから見る方法に関して既に知れ渡っているかと思っていましたが、そうでもないようですので、記載します。 Cyrket http://www.cyrket.com/ ほぼリアルタイムで、コメントが表示されるので非常に便利 Android Market Place Rankings http://androidstats.com/ ランキング主体、カテゴリ内のランキング情報等がわかる サイトがアップデートされるタイミングが不明、参考程度に留める。 ソフトウェアの詳細ページは、Cyrketに飛ぶ Share on Tumblr Tweet

Android DefaultSharedPreferences

イメージ
SDK内には、DefaultSharedPreferencesというクラスはありませんが、getDefaultSharedPreferences()で取得できるSharedPrefrencesの事をDefaultSharedPreferencesと私は呼んでいます。 SharedPreferencesは、ユーザが自由なファイル名及びモードで作成できますが、PreferenceActivityでは自動的に、SharedPreferencesを作成します。この自動的に作成されるSharedPreferencesがDefaultSharedPreferencesです。 DefaultSharedPreferences特徴 ファイル名はパッケージ名+”_preferences” アクセスモードは通常、MODE_PRIVATE アプリケーションディレクトリ下の、shared_prefディレクトリに作成される。 DefaultSharedPreferencesの取得法 PrefrenceManagerクラスの、getDefaultSharedPreferences()でSharedPreferencesを取得可能です。DefaultShredPreferencesですので、ファイル名とモードは必要ありません。 ActivityクラスのSharedPreferences getPreferences(int mode)でDefaultSharedPreferencesを取得可能です。ファイル名なしで、モードのみの指定となります。(通常はMODE_PRIVATEを指定するのが良いでしょう)。 注意) SDK 1.1のActivityの説明ページで、getSharedPreferences()というメソッド(引数なし)が記載されていますが、このようなメソッドはありません。

Android SharedPreferences について

イメージ
SharedPreferencesの動作について色々調べていたのですが、途中経過としてまとめです。 SharedPrefrencesとは まずSharedPreferencesは、内部的にキーと値をHashMapとして保持し、最終的にXMLファイルとして出力をする。代表的な関数として以下の物がある。 getBoolean(String key, boolean defValue) getFloat(String key, float defValue) getInt(String key, int defValue) getLong(String key, long defValue) getString(String key, String defValue) 編集する時は、SharedPreferences.Editorを使用する。 作成されるXMLファイルのファイル名はプログラムから自由に指定ができ、アプリケーションディレクトリ下の、shared_prefディレクトリに作成される 少し分かりにくい点は、モードパラメーターはファイル作成時に使用されるということである。 SharedPrefrenceファイルが作成されるのは、ApplicationContextクラスのgetSharedPreferences (String name, int mode)メソッドが最初に呼ばれた時で、modeはこの時の作成時のファイルのモードとなり、そのままlinux状のファイルパミッションとなる(666等) 読み込み時に、パラメータで指定したモードでオープンする意味ではない。 サンプルソース Android SDKドキュメントの中に記載されているソースのコピペ import android.app.Activity;import android.content.SharedPreferences;public class Calc extends Activity {public static final String PREFS_NAME = "MyPrefsFile";. . .@Overrideprotected void onCreate(Bundle state){super.onCreate(state);. . .// Restore pref...

Android PreferenceActivityにonSharedPreferenceChangedを使う時に注意する こと

イメージ
PreferenceActivityについては、以前 Android アプリケーションの設定画面の作り方 という記事で簡単に記載しました。ソフトウェアの設定画面等で使用するために用意されている、PreferenceActivityは、XMLファイルを作成するだけで自動的に値の保存、初期値設定等行うので非常に便利です。 設定画面上で変更が加わった時に呼ばせることができる、onSharedPreferenceChangedというコールバック関数がありますが、これで少しつまずいたので解説です。 onSharedPreferenceChangedとは SharedPreferenceの値が変更になった時に呼ばれるコールバック関数です。 ユーザにより設定が変更された時に、PreferenceActivity内ですぐに変更を処理したい時に使用します。 例えば、タイマーのインターバル時間が変更されたら、設定された値を、Summaryに表示する時など使用します。 このコールバック関数は、PreferenceActivity内で、registerOnSharedPreferenceChangeListenerを使用してコールバック登録、また、unregisterOnSharedPreferenceChangeListenerを使用して解除をします。 登録 getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this); 解除 getPreferenceScreen().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this); 呼ばれた時の処理 引数のkeyに変更されたキーの値が入ってきます。 処理をしたいキーなのか判断をして、処理すべきキーであれば、sharedPreferencesから値を取り出し処理をします。 public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,String key) {if(getString(R.string.pref_interval_key).equals(...

Android Google Android Hackathonで優勝

イメージ
3/20開催の、Android Hackathonに、行ってきてもらったわけなのですが なんと、優勝して帰ってきました。 Androidぬいぐるみと、表彰状 なお、表彰状の裏には、3000円分のAmazonギフト券(ギフト番号)が印刷されていました。 開発者にとって、本代は常にかかるものですから、気が利いていてとてもいいですね。 Google廊下 お弁当 すごいなぁと感激しましたが、もちろん、今回優勝できたのは、Hackathonで良い開発メンバーに恵まれた結果だと思います。 名前は許可取ってませんので載せませんが、ありがとうございました。 会社の近くに来られたら、是非寄ってください。豚しゃぶをおごらさせて頂きます。 ブログ内の関連する記事 Android Hackathon(はっかそんと読むらしい)に潜入 Share on Tumblr Tweet

Android システムリソース ディバイダー一覧

イメージ
Android OSが持っているR.drawableのシステムリソースの中で、接頭語がディバイダとなっているリソースがある。 これは、区切り線といったら良いだろうか、以下の画像のようなものである。 Android SDK ドキュメントには4種類のdividerが記載されているが、9-patch形式になっているので、単体で画像ファイルだけ見ても判別不能なので、アプリケーションに組み込んで比較してみた。 ディバイダーの種類 divider_horizontal_bright divider_horizontal_dark divider_horizontal_dim_dark divider_horizontal_textfield XMLファイル レイアウトファイルから、androidのdrawableのアクセスは以下のように記述した。 <ImageView android:id="@+id/titleDivider"android:layout_width="fill_parent"android:layout_height="1dip"android:src="@android:drawable/divider_horizontal_dark"android:scaleType="fitXY"android:gravity="fill_horizontal"android:layout_marginLeft="10dip"android:layout_marginRight="10dip"/>