Web

My docomo checker

ケータイ料金をウィジェットで常にチェックして節約に繋げよう!!

”My docomo checker”というAndroidアプリで、
スマートフォンの月額の利用料金やパケット通信量をウィジェットに表示できるようにしておいて、
節約を意識しましょうよ、という話。
iPhoneアプリau、softbankのAndroidアプリにも、こういったアプリがあるらしい。

「来月の請求予定金額」や「残りの無料通話時間」や「パケット通信量」などの情報が、
いちいち、Webサイトでログインしなくても、スマートフォンのウィジェットで確認できるので、
かなり便利。

まず、インストール後起動したら、”docomo ID”と”パスワード”を入力
My docomo checker

My docomoから情報を引っ張ってきて、My docomoで確認できる情報がアプリで見られるように。
My docomo checker

これだとアプリを起動しないと確認できないので、Androidのホーム画面にウィジェットを追加し、
”My docomo checker”を選択すると、ホーム画面で「来月の請求予定金額」や「パケット通信量」が確認できるようになります。
My docomo checker

昨今スマートフォンの普及でトラフィックが増加し、各キャリアさんとも通信規制をかけており、パケット通信量が、各キャリアから公表されている上限値に達することは稀だと思うけど、このウィジェットでチェックしてみるのも良いんじゃないでしょうか。

Firefoxが10にバージョンアップ!どんな機能が追加されたのか!?のまとめ

Mozillaさんが1/31にFirefox 10のリリースを発表。
去年、GoogleがMozillaとの契約解除か!?ってニュースが出てたけど、無事契約延長されてバージョンアップに至った模様。

で、10では主にどんな機能が追加されたか、インストールするとどんな良いことがあるのか、
のまとめ。

・HTML/CSS分析機能追加

Web開発ツールの追加。
「ツール」→「Web 開発」→「調査」メニューでインスペクタを起動し(またはCtrl+Shift+i)、
マウスオーバーで対象要素を選択すると、要素のボックスが強調表示され要素名、ID、クラスがポップアップで確認できる。

また、画面下部に表示されるツールバーで「スタイル」ボタンを押せば、要素に適用されている CSS スタイルルールの確認・編集できるパネルが右に、「HTML」ボタンを押せば HTML ソースを確認したり属性の書き換えを行えるパネルが下に表示される。

こんなふう↓
インスペクタ

GoogleChrome等では既に搭載されている機能ですが、見た目がChromeよりもグラフィカル。

・FireFoxを新バージョンに更新するたびにアドオンに互換性がないと判定されることがなくなる

→これが今回のバージョンアップの最大の特徴と言われてる。
Firefox 4以降で動作するすべてのアドオンは、今後のFirefoxの全バージョンで動作するらしい。

・双方向テキストの分離のためのHTML5要素”bdi”をサポート。

→いわゆる、HTML5対応。

・プラグインなしに、要素を3D的に変形できる”CSS 3D Transforms”をサポート。

→いわゆる、CSS3対応。

・WebGLでのアンチエイリアス対応

→3次元CG表現が滑らかに。

・フルスクリーンAPI

→ブラウザの領域を超えて、ディスプレイいっぱいに対象となる任意の要素を表示できる。

この↓ようなカープ坊やが、”フルスクリーン”ボタンを押すと、
カープ坊や

この↓ようにディスプレイいっぱいに表示されます
カープ坊や

・“mouseenter”“mouseleave”イベントなどにも新たに対応。

→マウス・ポインタが要素に乗ったり、外れたりした際のイベントに対応。

・“video”タグの動画再生時に、右クリックすると、スナップショットが取れたり、動画サイズ、音声チャンネル数、サンプルレート、フレーム数などの統計情報が閲覧できる。

→これも、やっぱりHTML5対応。

ちなみに、すでに次のFirefox11が3/11でリリースを予定しているとか。

ChromeかFirefoxか悩みますなぁーー

なぜWebサイトのURLに”#!”を付けるのか?クローラーはインデックス可能なのか?について。

まず、”#!”の呼び方から。

「シャープエクスクラメーション」とか呼ぶのかと思ってたら、
「hash=#」「bang=!」の略で、「shebang=シバン」っつーらしいんです。

シバンがURLに付いてるサイトで、最も有名どころで言うと、Twitter。
Gmailなんかもそうですかね。

https://twitter.com/#!/i/connect 然り、https://twitter.com/#!/i/discover も然り。
lifehackerやfacebookも、今は違うけど昔はどうやら付いていたらしい。

”#”と”!”をわけて考えると、
・”#”は、Ajaxアプリケーションとして、画面遷移ではなくページ内遷移をするため。
・”!”は、”#”とセットにして、Googleクローラーにクロール可能なAjaxアプリと認識させるため。(※注1)

Ajaxアプリケーションなので、

・Javascriptによりクライアント(ブラウザ)上での動作が主で、サーバー負荷が軽減される
・特にサーバー側の機能を必要としない
・Javascriptで画面を書き換えるので動作が速い

といった、良いことはあるけれど、

・GoogleBot以外のクローラーが、クローリングできない。(※注1)
・ページ自体がコンテンツ扱いでないため、アクセス解析がし難くなる。
・サーバーサイドプログラムと比較すると、ブラウザ間で挙動の差異が出てしまう確率が高くなる

といった、良くないこともある。

(※注1)
また、SEO的には、”#!”を付ければGoogleBotが勝手にクローリングしてくれる訳ではありません。

GoogleBotは、”#!”形式のURLを見つけると、まず、
URLを”_escaped_fragment_”に変換した上で、サーバーにコンテンツをリクエスト。

たとえば、
ohsexybaby.com/#!web/843/ だったら、
ohsexybaby.com?_escaped_fragment_=web/843/ って感じでリクエストがきます。

そしたら、サーバーサイドでは、クローラーからのアクセスと判別し、該当コンテンツのHTMLスナップショットを作成して、クローラーに返すように実装する必要があります。

HTMLを受け取ったクローラーは、HTMLを解析し、もとのURL(ohsexybaby.com/#!web/843/)に戻したうえで、インデックスを格納してくれる、という仕組み。

Googleとしては、「Googlebot がよりブラウザに近い動作をするよう対応を続けています。」と仰ってるけど、クローラーがJavascriptをぴょんぴょん実行するのはまだ先なんでしょーか。

スマートフォンで公衆無線LANに繋いでインターネットをするのは、セキュリティ上、安全なのか危険なのか。

いわゆるWi-Fiの話。
そもそも、スマートフォンのセキュリティに限った話ではなく、PCにもおんなじ事が言えますが。

昨今、各キャリアともスマートフォンのユーザー数増加により、3G回線が逼迫してきています。
そりゃユーザー数が増えれば増えるほど、比例して全体の通信量も多くなります。

そこで、外出先で3Gではなく、無線LANに繋げて3Gよりも高速でインターネットが出来るように、
au,docomo,softbankのWi-Fiスポットがいろんな所に設置されてます。
レストラン、サ店、駅、ホテル、空港などなど。

Wi-Fiスポットは、au,docomo,softbankが設置したものに限らず、あまたのプロバイダのものが設置されてます。
スマートフォンを持って外出すると、”Wi-Fi設定”にスポット名がじゃんじゃん出てくると思います。
Wi-Fiスポットに接続すると、晴れてネットができる状態になるわけだけど、そのWi-Fiスポットが、
通信をどう暗号化しているかによって、セキュリティ上、安全かどうかがまったく変わってきます。

暗号化方式はおもに以下の4ケース。

・None(またはオープン)
→何も入力せずに接続できるけど、セキュリティ対策ゼロ。

・WEP
→暗号化・復号化の処理が軽いため通信は速いが、
暗号化自体が脆く、10秒で解読されてしまうくらい危険。

・WPA
→WEPのセキュリティ改良版。方式はRC4暗号。
IEEE 802.11i規格に準拠。

・WPA2
→WPAの完全版。方式はAES暗号。
IEEE 802.11i規格に準拠。

Wi-Fiのアクセスポイントとなるワイヤレスルーターは、ファイアーウォールで外部からの通信を防御してますが、同じネットワークに接続している他のユーザーからは守ってくれません。(同じネットワークに繋がっちゃってる状態なので。)

なので、セキュリティ対策ゼロのWi-Fiスポットに接続した場合、通信内容が暗号化されていない且つ、誰でもどの機器でも繋ぎ放題のため、セキュリティ的にかなり危険にさらされちゃいます。

長々となってしまいましたが、

・接続するWi-Fiスポットが、WEP以外で通信を暗号化していること。
・IDとパスワードをやり取りするような通信はしない。
・プライベートなメールの送受信はしない。
・どうしても我慢できない場合は、通信がのぞき見されても良い内容であること。

くらいは意識したうえで、利用すべきじゃないでしょうか。

yslow

W3 Total CacheプラグインでWordPressの動作を軽くしてパフォーマンスを向上させたい!!①

ウェブサイトのパフォーマンス計測ツール、YSlowやPage Speedで、
当ブログを計測してみると、あまり良い点数がいただけない。
yslow
Page Speed

涙目になり注意されている項目を調べてみると、
JavaScriptとCSSを圧縮すればパフォーマンスが上がるよ」とある。
Apacheのモジュール mod_deflateでもできそうだけど、
ここはいっちょ、WordPressのプラグインを検索。

“W3 Total Cache”というプラグインが素晴らしいという記事があったので、
まずはインストール前に仕組みを確認。

そもそも、”W3 Total Cache”ってどんなプラグインなん?と言うと、

(1)CSS、JavaScriptを圧縮してくれる
(2)MySQLからデータを取得するクエリをキャッシュしてくれる
→同じクエリであれば、DBに問い合わせをせずに結果を返す
(3)動的に出力されたhtmlをキャッシュしてくれる
→これは“WP Super Cache”でもやってくれます。
(4)オブジェクトをキャッシュしてくれる
→PHPの変数を1個としてキャッシュする
(5)プロキシサーバーやブラウザに対して、HTTPヘッダフィールドに設定する値が制御できる
→Cache-Control、Expires、Last-Modifiedを指定して、無駄なHTTPリクエストの削減が可能

とまぁ、このご時世、帯域が太くなってインターネットが高速化されているとはいえ、
通信しなくても良い余計なトラフィックは発生させないようにしようぜ!っていう考えは
Webアプリとしてあるべき姿だと思っております。

なので、他のプラグインとの併用やインストール時の設定など、もうちょい調べた後インストールしてみよーっと。

softbank

SoftbankガラケーのIP帯域がガラッと変わるようです。

11月に発表されてましたが、ネットワーク設備の老朽化対策(?)のため、

2012年3月にSoftbankのYahoo!ケータイにて利用するIPアドレス帯域がガラッと変わるとのこと。
※詳細はSoftbankさんのサイトを参照

各キャリアとも、IP帯域の追加は年に数回実施されてるけど、ここまで大幅に変わるのは珍しい。

変更内容としては、
・現行の複数のIP帯域が、2012年3月末で停止される帯域と6月末で停止される帯域がある
・新しいIP帯域が3月末で幾つか追加になる

IPアドレスでアクセス制限をかけているサイトは、サイトにアクセスできなくなってしまうので、忘れずに対応しておきましょう。

しかも、”2012年3月末以降に使用する送信元IPアドレスは、
それ以前にも試験的に使用する可能性があります。”

とのことなので、早めにやっておいた方が良さげです。

MoveToSD

“空き容量が不足しています”はもう勘弁…Android端末の内蔵メモリの空き領域を増やす!

Android端末を使っているうちに、出てくるのが”空き容量が不足しています”のメッセージ。

最近では、ROMが8GBある端末も登場しているけども、1GBの端末もまだまだ多い。
アプリをゴリゴリとダウンロードしていると、
すぐにいっぱいになって、「空き容量が…」と怒られちゃいます(ToT)/

内部ストレージの容量そのものは増やせないので、どうやって空き容量を増やすか??
について考えてみる。

(1)各アプリのキャッシュをクリアする。
(2)SDカードに移動可能なアプリは、保存先を端末からSDカードに移す。

(1)は以前当ブログでも書いた、”1Tap Cleaner Free”アプリを使えばできる。
(2)をやってくれるアプリが、”MoveToSD”というアプリ。

使い方はちょー簡単。画面の仕様としては、
“On Phone”タブは、SDカードへ移動可能な内蔵メモリにインストールされているアプリ一覧で、
“On SD Card”タブは、SDカードに保存されているアプリ一覧。
“On Phone”タブをタップすると、SDカードに移動可能なアプリ一覧が出るので、
MoveToSD

そのアプリをタップしてアプリの詳細画面を開き、”SDカードに移動”をタップすればおk。
MoveToSD

そうすると、”On Phone”タブから移動したアプリが消えるので、
SDカードに移動されたことが解ります。
MoveToSD

”MoveToSD”は、一覧で見れて移動もできるんで便利なんだけど、
気になるのが、”SDカードに移動できるアプリとそうでないアプリは何が違うのか”っていう点。

Androidアプリは、”AndroidManifest.xml”というマニフェストファイルを必ず持っていて、
一意な名前のJava パッケージ名だったり、アクティビティなどのコンポーネント、起動方法など、
アプリの設定が記述されています。

そのxml内で、”installLocation”が指定できて、指定がなかったり、
下記の中で”internalOnly”が指定されていると、そのアプリはSDカードへは移動できないみたい。

internalOnly : 内蔵メモリへのインストールのみ許可
auto : 内蔵メモリ優先でインストール。しかし内蔵メモリの容量が一杯だった場合はSDカードへ保存
preferExternal : SDカードを優先してインストールするが、SDカードの容量が一杯だった場合は内蔵メモリへインストール

うーん、”MoveToSD”を使ってみると解るけど、SDカードに移せないアプリが数多く存在する。

ウィジェットアプリなんかだと、内蔵メモリに保存しないと起動できないアプリがありそうだけど、
アプリを開発/公開する際は、ユーザーの任意で内蔵メモリでもSDカードでも
保存できるようにして欲しいなぁー

spmode

スマートフォンのユーザー管理方法について考えてみる。

先日起こったドコモのSPモードメール障害。ネットでもだいぶ大きく取り上げられてました。

はてぶされてた、とあるブログを見ると、
伝送路のトラブルでIPアドレスとユーザー管理の紐付けが不整合を起こし、
加入者はIPアドレスで識別されているため、
結果、メールクライアントのアカウント情報が他人のものになってしまったという話。

スマートフォンは、3G回線に繋がるたびにIPアドレスが変わるんで、
IPアドレス取得→ユーザー管理サーバでユーザーと紐付け→セッション管理サーバに保存
→(切断後)IPアドレス解放 が繰り返し行われており、
今回は最も肝となる、ユーザー管理サーバで障害が発生して大変な事に。

spmode

ブログにもある通り、IPで識別しちゃっていいの?!とか、IP偽造されたらどうすんの?!とか、
いろんな課題はありそうだけど、根本的なインフラの基本設計は簡単には変えられないと思う。

で、スマートフォンのネイティブアプリやWebアプリはどのようなユーザー管理があるか。

ネイティブアプリ:SQLiteでデータベースにユニークなユーザー識別情報を保存する。
データベースはネイティブアプリと一緒に端末にダウンロードされる。

Webアプリ:アプリ同様、SQLiteでデータベースにユニークなユーザー識別情報を保存する。
アプリと違うのは、ブラウザのローカルストレージに保存される。
なお、ドメインごとにデータベースが割り当てられる。httpとhttpsでも保存領域は別。

Webだからcookieでも管理できますね。

しかしSPモードのシステム構成って煩雑だなぁ…

ブラウザアプリよりもネイティブアプリの方が売れる!?世界ではどんなiPhoneアプリが売れているか?

ソーシャルゲーム情報サイトで、日・米・独・英・仏・中のApp Storeセールスランキングが載ってました。

ちなみに、App Storeの”トップセールス”ランキングは売上順で、
“有料”、”無料”のランキングは、ダウンロード数に加えて、
ユーザーのアプリ利用頻度がアルゴリズムとして加味されているらしい。
(スタンドアローンの利用頻度って解るんだろうか。。)

日本はブラウザゲームが繁盛しているので、ネイティブアプリを展開していないケースも多々あると思うけど、特徴というか、傾向みたいなものを挙げてみた。

(1)欧米人は格闘ゲームが大好き。
→これが一番特色が出てるかなと。グラフィックが奇麗な格闘モノがアジアよりも強い。

(2)「Infinity Blade II」、「Batman Arkham City Lockdown」など、アメリカで売上の高いアプリは、ヨーロッパでも売上は高い。
→アジアでも高いものもあるが、ヨーロッパほど顕著ではない。

(3)日本や中国で売上が高いアプリがガラパゴス化している。
→まぁ日本だとパチスロ系とか上位に入ってるし。

(4)サッカー系は、主にヨーロッパで人気がある。
→「FIFA 12 by EA SPORTS」なんて、アメリカじゃ20位に入ってこない。

(5)テーブルゲーム系の人気は、欧米>アジア
→フランスでは「Texas Poker」が1位だし、アメリカでは「Poker by Zynga」が3位。
ダウンロード数ではなく、売上って考えるとスゴイ。

(6)「Smurfs’ Village」など、ソーシャルゲームはアジア、欧米でも人気タイトルは売上が高い。

(7)「クロノトリガー」はスゴイw!
→アプリ自体、そこそこ高額なのに5ヵ国でランキングに入っている。

日本の情勢は、ブラウザアプリ>ネイティブアプリ、海外は逆で、ブラウザアプリ<ネイティブアプリになっていると思いますが、今後は海外が日本みたいになるんでしょうか。

saitama seibu

2クリックで簡単保存!FireFoxでWebページ全画面のキャプチャーが取れるアドオン”Pearl Crescent Page Saver”

FireFoxのアドオン”Pearl Crescent Page Saver”は、最短2クリックで簡単にWebページの画面キャプチャーが取れる優れモノ。
(FireFox8.0.1で確認)

主な機能は以下のとおり。

・Webページの画面全体のキャプチャーがpngまたはjpgで保存できる
※もちろん表示部分のみでも取れる
※フレームのみも取得可能
・ページにFlashコンテンツがあっても取得可能
・キーボードショートカットが設定できる
・保存する画像の比率が指定できる
・コンテキストメニューに「ページ全体を画像として保存」「表示部分のみ画像として保存」が追加できる

アドオンをインストールすると、ブラウザのツールバーにボタンが出てくるので、設定はこちらから。
Pearl Crescent Page Saver

こんな感じでFlashコンテンツも白くならずに保存できております。
saitama seibu