読者です 読者をやめる 読者になる 読者になる

Browser

Microsoft Edge(Project Spartan, Internet Explorer) 、ブラウザ周辺、Web フロントエンド開発、UI、など

Microsoft Edge まとめページ

今日の Microsoft イベントを Web 開発の視点で見る

 今日の Microsoft イベント

以下のページでイベントの録画が観れる(英語)

 

 

はじめに

Windows 10 が動くプラットフォームとアプリと Web 技術

Windows 10 が動くプラットフォームを Universal Windows Platform といっており、よくある説明では以下のようにデバイスの種類が分けられている。

f:id:x67x6fx74x6f:20151007165335p:plain

この環境で動くアプリを Universal Windows Platform Apps (UWP アプリ) と呼んでいる。
現状 HoloLens の詳細はわからないが過去のプレゼンで UWP アプリのものは動くととのことで IoT 以外は Visual Studio と HTML、CSSJavaScript で開発が可能。

また、IoT 以外は Microsoft Edge が動作。(たぶん HoloLens も)
IoT での開発ができないのは端末のスペック的な問題と予想できる。

 

Web 技術で作るアプリについて

基本的には OS で動いている Microsoft Edge の機能が使用できる。

 

制作方法は2つ

  • Visual Studio で HTML、CSSJavaScript と画像などのリソースと共にビルドする
  • 公開されている Web サイトやアプリの URL をアプリで読み込む

 

注意点

  • Edge の実装的には「試験的な JavaScript の機能」は使えるのだが UWP アプリでは動かない
  • セキュリティのためアクセスするネットワークの URL はマニフェストファイルに記述しなければならない。
    このことにより、例えばストアアプリで独自ブラウザをつくるのが難しい。
  • 現状、C#/C++ で可能なデスクトップからファイルのドラックアンドドロップが動かない
  • Web 技術に無い機能は C#/C++ 同様に Windows Runtime を JavaScript から呼び出す必要がある
  • IoT の場合、HTML で UWP アプリをつくることができない。 Node.js を使い JavaScript で動かす。

UWP アプリに関しては今後 WinJS と共につくり方を書く予定。

 

本題

Xbox One

f:id:x67x6fx74x6f:20151007170654j:plain

Windows 10 のプレビューが開始され、11月にはリリースされるとのこと。
Microsoft Edge と UWP アプリが動作
UWP アプリとして動かせば PC 同様に JavaScript から KinectAPI も動作するはず。
Microsoft Edge で GamePad API がサポートされた為、ゲームパッドからでもアプリやサイトが操作できるはず。

 

HoloLens

f:id:x67x6fx74x6f:20151007170151p:plain

詳細不明。多分、ハード中身は通常の PC か Mobile の構成だと思われる。
UWP アプリが動くらしいので Web の技術で動くはず。
これが動くなら Microsoft Edge も動作可能である。
また HoloLens 自体、既存のデバイス構成にグラスに映すプロジェクタ、カメラ、スピーカー/マイク、Kinect センサー左右で2つを付けたものなので $3000 なのはわかる。
過去の HoloLens 開発デモでアプリのソースを開いていた際は右と左で振る舞いが分けれるようだった。

 

Microsoft Band 2

f:id:x67x6fx74x6f:20151007170345p:plain

現状の Band SDKC# 書かれているためセンサーを使ったものを Web の技術で使うことはできない
ただ、以前の Band から Web Tiles というものがあり
Web 上の JSON を使ってフィード表示したり、通知を受けることができる

Microsoft Band - Developers

 

Lumina 950 / 950 XL

f:id:x67x6fx74x6f:20151007170948j:plain

Microsoft Edge はデスクトップ、ラップトップ、タブレット版と同等の機能が使える。
たとえば getUserMedia から使えるカメラやマイクなど。
Windows Phone の OS である Windows 10 Mobile は Internet Explorer 11 は搭載されないため、標準ブラウザは Microsoft Edge のみ。
一部、機能の振り分けは必要だが基本的にはデスクトップ、モバイル同じアプリが動く。
また、アプリの制限により他社のブラウザは Opera Mini など一部しかない。

 

虹彩認識の Windows Hello

もし、Web で Windows Hello が使えるようになるなら FIDO 2.0 Web API が導入されから。
Microsoft Edge での FIDO 実装目的は PIN や Windows Hello 使えるようにするためとのこと。
FIDO 2.0 Web API は現在開発中のステータス。

 

Continuum for Phone

アダプターに接続するとディスプレイにタブレットモードで表示される。

UWP アプリとしてつくられていれば問題なく動くはず

 

そういえば、マウスコンピューターの中の人曰く、MADOSMA も技術的に WIndows 10 Mobile 対応可能とのこと

 

Surface Pro 4 / Surface Book

f:id:x67x6fx74x6f:20151007171143j:plain

通常のディスクトップ、ラップトップ、タブレット版と変わらない。
指紋認識の Windows Hello は虹彩認識同様 FIDO 実装待ち。

 

 

とりあえず、日本マイクロソフトさんには、開発側からするとハードを早く出してほしいというところ。
開発できないのでスタートラインにも立てない。

 
まとめ

build 2015 で発表された環境と端末が整う準備段階に来た状態で
Windows 10 では若干の制限はあるものの Web ページ と Web アプリ を同じように制作可能。
フロントエンドエンジニアが少しの作法をおぼえれば、Electron(旧Atom-Shell)と同じような形で Windows 10 のプラットフォームアプリをすぐに制作できる。
Windows 8 から Web 技術でアプリがつくれるようになって数年、この界隈で数年の遅れは大きいが、まだ幸いかストアのアプリは少ない。
今すぐにでも UWP アプリを開発すべきだろう。

 

他のプラットフォームに関しては GoogleAndroid と Web とプラットフォームが分かれている。
Apple は他より Safari のブラウザ実装が遅れており、tvOS にはブラウザがない。
OSXiOS で別の世界で基本がわネイティブを良しとは思っていない。
頭のよくない私でも、自社のプラットフォームに囲い込むとなると、全てのプラットフォームで動く Web コンテンツが邪魔であるのは確かだ。

 

Windows の良し悪しはあるとしても、理念として1バイナリで多くの端末で動くというのは素晴らしい思っている。

 

来年は HoloLens も含め、端末が揃うことでこれらの実用段階に入りやさらなる進化が期待できそう。

スポンサーリンク