Windowsタブレットの今後

Windowsタブレットが各社から販売され、本格的にWindowsタブレットの競争が 始まりました。

最初、 マイクロソフトからWindowsタブレットPCのリファレンス機的な扱いでSurfaceRTとSurfaceProが発表され、 今後のWindowsタブレットの流れとしては、 アンドロイドタブレットやiPad対抗として、OSにWindowsRTを使用した、安くてバッテリ持ちが良く軽い、その代わり今までのWindowsソフトは動かず性能の低いSurfaceRTタイプと、 ネットブックやウルトラブックからの延長として、OSにWindows8を使用した、今までのWindowsソフトが動き高性能な、その代わり高くてバッテリがあまり持たず重いSurfaceProタイプの、 2つの路線で各社から販売されると思っていました。

しかし、実際にはWindows8を使用したタブレットばかりになり、しかも価格・バッテリ持ち・重量がSurfaceRTタイプ並になっています。

理由はCPUにIntelの次世代Atom「Atom Z2760(コードネームClover Trail)」を使用している為です。 このCPU、今までのAtomとターゲットが大きく異なる。今までのAtomは、ネットブックやウルトラブックなどの廉価なパソコンに、安く低消費電力で使用するために設計されており、 メモリやバスなどの周辺部品の設計はパソコンと違いがありませんでした。しかし、Atom Z2760では、ターゲットが完全にタブレットになっており、周辺部品に組み込み系の技術が使われています。 そのため、CPUだけではなくシステム全体で低コスト・低消費電力・軽量化が実現できています。 さらに、S0i1とS0i3という新しい待機状態に対応したため、アンドロイドタブレットやiPadなどと同じように、ネットワークに接続したままスタンバイ状態に出来るようになりました。

正直、Surfaceが発表されたときWindowsタブレットは流行らないと思っていました。 WindowsRTタブレットは、過去のWindowsソフトが動かないのでWindowsとしてのメリットが無い。 Windows8タブレットは、価格・バッテリ持ち・重量で他のタブレットに勝てない。 結果、どちらも流行らないだろうと。

しかし、Atom Z2760のおかげでWindows8タブレットが、他のタブレットと同じ土俵で戦えるようになり、ビジネス向けを中心に一気にWindows8タブレットが普及しそうな状態になりました。

今後、工場などで利用されるタブレットとしては、アンドロイドが有力と思っていたが、 Windows8タブレットのほうが可能性が高そうなので、早いことWindowsストアアプリ(旧名称Metroアプリ)の開発に慣れておく必要がありそうです。

初めてのアンドロイドソフト開発ではまった事

nexus7を購入したのでアンドロイドソフトの開発を初めて見ました。
以前から@ITなどのサイトを読んで勉強はしていましたが、実際に開発を行うと、 つまらないところではまってばかりでした。

以下、はまったところ。

1.*.out.xmlというファイルが出来てビルドできない。
ビルドすると勝手に*.out.xml(*の部分は既存のxmlファイルのファイル名が入る)という空のファイルができあがり、ビルドエラーになってしまう。
その後、*.out.out.xml、*.out.out.out.xmlとビルドするたびにどんどんファイルが増えていきます。

調べると、xmlファイルを開いていたり、パッケージエクスプローラでxmlファイルを選んでいると、このファイルが出来上がるそうです。

*.out.xmlが出来上がった場合は、ファイルを削除して再度ビルドすれば直ります。

2.アンドロイドのエミュレータが起動できない。
アンドロイドのエミュレータ(AVD)を起動するときに「PANIC: Could not open: 」というエラーが出てしまいました。

以下のサイトに原因と解決方法が記載されていました。
http://u2k772.blog95.fc2.com/blog-entry-246.html

以下の場合にこのエラーが発生するそうです。
a)ユーザー名に日本語やスペースが含まれている場合。
b)マイドキュメントなどの位置をDドライブなどに移動した場合。

私の環境ではマイドキュメントがDドライブに移動してあるためにエラーになってました。

3.アンドロイドのエミュレータが異常に遅い。
起動までに1分かかり、起動後も描画がのろのろで使えません。
snapshotオプションをONすれば、前回の状態から起動できるので起動が速くなります。
GPUオプションをONすれば、描画がスムーズになります。
しかし、いずれか一方のオプションしか使用できないため、結局エミュレータは使用せず、実機で動かしています。

4.タイトルバーが消えない。
作成したソフトを起動すると、大きなタイトルバーが上部に表示されます。
とても邪魔なので消したいが、画面レイアウトが記載されているxmlファイルを見てもタイトルバーを表示しているような記述が見つかりません。

タイトルバーを消すには、AndroidManifest.xmlファイル内のandroid:themeの文字列を以下のようにします。
android:theme=”@android:style/Theme.Black.NoTitleBar”
こんなタイトルバーが出てくるソフトは見たことがないので、タイトルバー無しをデフォルトにしてくれればよいのに・・

普段VisualStudioばかり使っているので、eclipsにもまだ慣れておらず、 いっそMONO For Android」で開発すれば、VisualStudio + .net + C#といういつも通りの 環境で開発が行え、今までに作ったソースコードの流用も出来るはず。
一通りeclips + JAVAでの開発を勉強したら「MONO For Android」を試す予定です。