Android 搭載ケータイでのGoogleモバイルサービス
http://www.youtube.com/watch?v=WJMMSCn2M64&eurl=http%3A%2F%2Fwww%2Egizmodo%2Ejp%2Fweb%2Fbrowser%2F&feature=player_embedded
Androidの売りは「指先で操作できる」とこにあると思う。指先で操作するためには、ある程度のボタンと画面の大きさが必要で、いままでの携帯電話の小さな画面だとちょっと扱いづらい。(日本独特の?)親指文化はそれはそれでいいので、このあたりは別ものとしてUIを扱う必要がある。
で、中古PDAでもInternet Explorerが付いているわけで、Google検索も当たり前のようにできる。が、何が使いづらいって、そりゃ、IEを立ち上げないとGoogle検索ができないのが面倒。
つまり、何か検索しようとすると
1.IEを立ちあげる。
2.お気に入りからGoogleを開く。
3.検索文字を入れて、検索!
ってな感じで3ステップが必要。だから、
1.Google検索アプリを立ち上げる。
2.検索文字を入れて、検索!
でもいいわけで、試しに実現したのがこれ。
ソースはこちら
namespace GoogleSearch { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private string SEARCH_NULL = "Google検索"; private void textBox1_TextChanged(object sender, EventArgs e) { } // 空白時の処理 private void textBox1_GotFocus(object sender, EventArgs e) { if (textBox1.Text == SEARCH_NULL) { textBox1.Text = ""; textBox1.ForeColor = Color.Black; } } private void textBox1_LostFocus(object sender, EventArgs e) { if (textBox1.Text == "") { textBox1.Text = SEARCH_NULL; textBox1.ForeColor = Color.LightGray; } } private void picSearch_Click(object sender, EventArgs e) { if (textBox1.Text != SEARCH_NULL && textBox1.Text != "") { System.Diagnostics.Process proc = new System.Diagnostics.Process(); proc.StartInfo.FileName = "iexplore.exe"; proc.StartInfo.Arguments = "http://www.google.co.jp/search?hl=ja&lr=lang_ja&q=" + textBox1.Text; proc.Start(); } } //ロード時 private void Form1_Load(object sender, EventArgs e) { picGoogleLogo.Image = Properties.Resources.GoogleLogo; picSearch.Image = Properties.Resources.SearchIcon; picSearch.Focus(); textBox1.Text = SEARCH_NULL; } } }
特に何も難しいことはやっていなくて(やることすらできない)、Process クラスでIEを起動しているだけです。画像の貼り付けは、ボタンとかに付けられないのでリソースから明示的に。
問題点としては、
– 文字入力はスタライス入力が必須になってしまうので、別途大きなボタンが必要。
– テキストのコピー&ペーストは自前で作るらしい(iPhoneを笑っていられない)
– ブラウザが基本フルブラウザなので、横スクロールがあって読みづらい。Agentを書き換えて、携帯用のレスポンスを呼び出したほうがいいかも。