Windows 8 Developers

Windowsストアアプリ開発とかその他もろもろのブログ。

※参加自由なWindows8開発コミュニティをFacebookグループでやってます。
https://www.facebook.com/groups/win8.developers/

その他、技術情報リンク集を下記にまとめています。
http://windows8-developers.hatenablog.com/entry/2013/02/20/155410


【10分で完了】WIndowsストアアプリの開発者アカウント登録方法をざっくりまとめてみた

WIndowsストアアプリ開発者アカウント登録の方法について書いてあるサイト、公式も含め色々あるのですが、分かり難かったので手順をざっくり書きます。

※個人開発アカウントの話で、法人アカウントは別手順になります

 

まずは前提条件ですが、

クレジットカード(VISA,Master,JCB,Amexの何れか)が手元にある事

これは必須になります。登録に4900円かかり、その決済は現状クレカでしか出来ません。カードが手元に無い場合は登録出来ないので意味ないのでご注意下さい

 

手順① Microsoftアカウントの作成

まず、MSアカウント(いわゆるHotmailアカウント)が必要です。既に持っている場合はそれを使っても良いですが、放置しているアカウントだったら新しく作り直した方が良いと思います。作成方法はwww.hotmmail.comでフツーのメールアカウント作成と同じです。

f:id:win8dev:20130309115803p:plain

  アカウント登録は特につまづく事なく完了出来ると思います。

f:id:win8dev:20130309115950p:plain

※この時点ではただのMSアカウント なので開発者にはなってません

 

手順② デベロッパーセンターで開発者アカウント登録をする

MSアカウントが出来たらhttp://msdn.microsoft.com/ja-jp/windowsに飛んで下図のボタンを押していざ、開発者アカウント登録を始めます。

f:id:win8dev:20130309121130p:plain

アカウント作成の際やデベロッパーコンソールを触る時に、ちょいちょいアカウントの確認を求められる事があります。面倒ですが毎回ちゃんと答えないと先に進めないので。入力アドレスに飛んできたコードを入れてください。

f:id:win8dev:20130309121543p:plain

開発者アカウント作成では最初に国とアカウントの種別を選択します。間違っても法人を選んではいけません。個人事業主やベンチャーの方も迷わず個人を選んだ方が良いです。

f:id:win8dev:20130309121737p:plain

次に開発者アカウントの詳細を入力していきます。法人は作成者と承認者を別々に入れたりと面倒ですが、個人アカウントは普通に情報入れるだけなので簡単です。

f:id:win8dev:20130309121844p:plain

 

アカウントを入れ終わったら規約に同意して決済に進みます。 

f:id:win8dev:20130309122137p:plain 

f:id:win8dev:20130309122229p:plain

ここで「登録コード」という思わせぶりな入力欄がありますが、これは基本的には手に入らないもので、一生懸命ググってもみつからないので、無視してそのまま「次へ」ボタンを押してしまいましょう。

そして支払いへ。クレジットカードの出番です。

f:id:win8dev:20130309132351p:plain

 

開発者アカウントの登録で唯一特徴があるのは「契約者の承認方法」です。後程説明しますが、クレジット決済したからといって無条件でストア申請出来る訳ではありませんのでご注意下さい。ちなみに登録時に下記のような説明が出ます。

 

f:id:win8dev:20130309122927p:plain

 

とりあえず今は置いといて、先に進みましょう。

クレジット決済が完了すると、とりあえず開発者アカウントの登録が完了しました。まずは開発アカウントの作成完了です。

f:id:win8dev:20130309123158p:plain

 完了画面でも選択肢があるのですが、いきなり有料アプリとかアプリ内決済をする人も少ないと思いますので、「受け取りアカウントの設定」は不要だと思います。「始めましょう」を選択して先に進みましょう。

f:id:win8dev:20130309131411p:plain

これで開発者として自分のダッシュボードに入れるようになりました。ダッシュボードに入るといきなりアプリ申請前提で「アプリの提出」への記載を求められますが、ここは申請前までにやれば良いので割愛します。

 

手順③ アカウントの承認

開発を行う分には問題ありませんが、先に書いた通りクレジットカードで決済してもそれで「完全OK」となった訳ではありません。ダッシュボードを見るとステータスが"検証中"扱いになっていると思います。

f:id:win8dev:20130309124226p:plain

 

つまり、「カードが不正でない事を確認をしないと完全ではない」という事です。このままの状態でストア登録申請するとUPは出来ますが、審査の手前でストップされます。

では、どうするかというと「今すぐ検証」リンクから3桁の認証コード入力をする事で承認OKの状態となります。認証は今すぐやらなくても大丈夫ですが、いずれにせよ時間的なオーバーヘッドが発生するのでなるべく早めにやるのがお奨めです。

f:id:win8dev:20130309124433p:plain

 

手順④ キャッシュバックキャンペーンへの応募

さて、4900円という上納金を払って登録を行った訳ですが、2013年3月8日現在、@ITさんが先着500名の新規開発アカウント登録者に5000円分のAmazonギフト券をキャッシュバックというキャンペーンをやっていますのでその応募もしましょう。3分もあれば出来ます。

□WIndowsストアアプリいつ作るの?今でしょ!キャンペーン

http://www.atmarkit.co.jp/ait/subtop/features/kwd/windows8appli.html

f:id:win8dev:20130309125146p:plain

上記リンクで飛ぶと入力フォームがあるので、そこで必要な情報を入力するだけです。

 

f:id:win8dev:20130309125459p:plain

 

開発者アカウントの所は上記図にある通り、「ダッシュボード」のプロファイル→アカウントで表示されるので、それを入力するだけです。

3/7から始まったキャンペーンなので今やれば確実にギフト券もらえそうですよ。

ちなみに賞金総額100万越えのコンテストも5月まで開催されるので、アカウント作るなら本当に「今でしょ」って感じです。

 

ここまでに書いた手順①〜④を行うのに自分は10分くらいで出来ました(既に法人アカウントを作成しているので慣れている状態でしたが)。

個人アカウント作成で問題発生確率は低いと思いますが、それでも引っかかるような事があれば公式のアカウント登録手順でお確かめ下さい。

 

□WIndowsストア開発者アカウントの登録(Microsoft公式)

http://msdn.microsoft.com/ja-jp/library/windows/apps/hh868184.aspx

 

Surface(WindowsRT)とWindows8(Pro)の違いを色々試してみた

晴れて3/15にJapanでも発売されるSurfaceですが、RTとWindows 8 Proの違いがなかなか浸透していないので手元の輸入Surfaceを色々触って違いをざっくりご説明。※基本操作としての違いを見るのが目的なので無茶な事はしてません

f:id:win8dev:20130307205956j:plain

RTとProの違い、Webで情報拾うと下記のような事は書いてあります。

Windows Media Playerが見れない

・Windows Store以外からアプリをインストールする事が出来ない

・Officeはプリインされている。が、マクロは使えない

・Flashは見れるけれどSilverlightはNG

 

WMP見れないなら動画ファイルとかは何で見れば良いだと思ったらデフォルトでストアアプリのプレイヤーが入ってました(当たり前)。

iTunesを入れようと思ったらWindows8用は用意されてますがRT用は存在し無いので、ダウンロード時にエラー出て駄目でした。つまりSurfaceでiTunes使う事は現状出来ません。iPodiPhoneの音楽管理は引き続きPCでやって下さいって事。

 で、次に自分がPC買ったら一番最初にやる「Chrome」のインストールを試みてみましたが、結果、こちらもエラー。じゃあFireFoxを、と思ったらこれもエラー。

(ChromeだめならFirefox駄目なのも当たり前ですが)

f:id:win8dev:20130307211843p:plain

 

つまりブラウザはARM対応のブラウザが出ない限り、強制的にIEのみという事になりますね。みなさんIEに還るしか道はないです。

 

ブラウザはさておき、「開発は出来るのか」という事でVisualStudioはサイトへ行ってみましたが、ダウンロードリンクすらおさせてもらえませんでした。

 最後にダメもとでeclipceを実行したら当たり前にエラーがでました。

 

やっぱりSurfaceは日常的なWeb閲覧と、簡単なOfficeでの書類の閲覧・作成をするようなライトユーザー向けという事になりますね。ある意味PCはPC、タブレットはタブレットとしてWindows8 Proと差別化出来ているのですね。

 

電池の持ちは良いし、Androidのタブレットよりは使い易いので、Facebook見たり電子書籍見たり地図見たりメールしたりといったカジュアルに使う分には値段的にも全然アリだと思います。そのうちRT向けのアプリも増えると思いますし。

WIndowsストアアプリのUI/UXの基本について考える

ストアアプリ開発を初めて半年くらい、当初はUI/UXを研究しようと、こんな本も買いましたが、技術を追う為に技術本は読むのにこっちは実はあまり読んでない。

f:id:win8dev:20130307013346j:plain

技術系は必要な時に必要な部分を読むけど、UI必要な時ってのが判断出来ないのが問題なのか。と、そんな事を考えてたら先日聞いたセミナーの内容が面白かったので覚書を。 

 

最適なボタンの大きさとは

マウスは1px単位でクリック出来るけれど人間の指は大体20pxがクリック範囲になるそうです。実験したら7mmの大きさのボタンであれば誤操作は100回に1回程度に抑えられる。なので、7mmより大きい素材作れば「小さくて押せない」とか「間違えて押してしまう」というクレームは避けれるという事ですね。ちなみに5mmに下げるだけで30回に1回誤操作が起きるらしい。

 

タブレットの操作感

これも言われてみれば確かにという感じで、タブレットを横向きで持った時にユーザが自由に操作出来る指は「両手の親指のみ」になるという事。

f:id:win8dev:20130307014103j:plain

(写真、明らかにiPadだけど気にしない)

確かに、手で持つと4本は支える為に隠れるので親指以外を使おうとするとそこで持ち直さなきゃいけなくなるのでタブレット向けのアプリで手持ちを前提としたアプリならば当然、考慮した方が良いアプリに近づく。

 

Immersive

ストアアプリのUXチームではImmersiveという言葉をコンセプトとして掲げているらしいです。意味は「没入する」とか「どっぷり浸かった」とかそんな感じ。それを実践するのになによりも大事なのはコンテンツが最優先という事。

要約すると、

 ・コンテンツこそがエクスペリエンスの中心である

・スクリーン上にはコンテンツに関係ある要素だけを配する

・ユーザの気を逸らす要素は最小限に

・ユーザーがコンテンツに没入出来る事。それがゴール

 

Grid

グリッドという概念が重要らしい(テンプレートであるくらいですから)。

[定義]

1 sub unit = 5px × 5px

1 unit = 20px ×20px1 colum = 80px

こんな感じですね。

f:id:win8dev:20130307014445p:plain

 

コンテンツを分ける場合に何か明確な区切りを入れるのでは無く、目に見えない「余白」を効果的に使い、UIによってユーザに認識させるのが重要。

  

・同じグループに属するアイテム間は10px空ける

・グループを分ける場合はアイテム間は80px空ける

 

--参考サイト--

□アプリのユーザー エクスペリエンスをデザインする(公式)

http://msdn.microsoft.com/ja-jp/library/windows/apps/hh779072.aspx

 □Windows ストア アプリの UX ガイドラインの索引 

http://msdn.microsoft.com/ja-jp/library/windows/apps/hh465424

 

 と、まあこんな感じでUIも掘り下げると色々出てくるので、またちゃんと勉強してここにも為になる情報書いていきたいと思います。UXガイドライン索引ももう一回さわってみます。

 

ちなみに先日書いた3/17のイベントではMicrosoftエバンジェリストの馬田さんがデザイン関連について色々話してくれるので興味ある人は必見です。

 

Windowsストアアプリ開発イベントをまたやります。

お題の通り、WIndows 8 Developersのカンファレンスvol2.0を3/17(sun)にMicrosoft品川本社セミナールームを借りて開催します。

 

ATND
http://atnd.org/event/E0013707

f:id:win8dev:20130302180210p:plain 

前回は一回目でWIndows8も出て間もなかった為、基本的な情報がメインでしたが、今回のセッションはハッカソンや登壇者が実際のアプリで得た生の技術情報を発信します。

 

基本的に最近は「Windows 8×〇〇」というコンセプトでやっていて、今回のイベントのセッションはこんな感じです。

 

 

カンファレンスセッション

セッション1
Windows 8 × NFC(仮)
一階 武史 氏
 
セッション2
WindowsストアアプリでPush通知を使ってみよう
登壇者:田中 孝佳 氏
Twitter :@tanaka_733
 
セッション3
Windows 8 × Windows Azure?(仮)
登壇者:株式会社ジャムロジック 
野村 亮之 氏
 

特別セッション

 


アプリを収益源に変える
~Microsoftの新しいWindows 8アプリ内広告~
日本マイクロソフト株式会社
アドバタイジング&オンライン
グローバル事業開発&戦略部門 ディレクター
森下 順子 氏

 

Windows 8 の革新的な UI を活用して、どのようなアプリが作れるのか

日本マイクロソフト株式会社
エバンジェリスト
馬田 隆明 氏


 

 NFC は以外と知られていないのですが、ちゃんと機能が搭載されてるんです。

クライアント端末前提のAndroidよりも作れる物の幅は拡がりそうなので個人的にはストアアプリのNFCは期待大です。

 

Push通知は昨今のアプリでは必須でAndroid,iOS共に開発者に取っては壁になり易いので、自力でやるのではなく既に実績ある話を聞けるのは嬉しいです。Asureも個人ではやってないのでこれを機に手を出したいです。

 あとスペシャルセッションとしてMS中の人がストアアプリの広告組み込みに関するお話をしてくれるそうです。

 日本でもSurfaceRTの発売が決定したので、開発者としてストアアプリ市場を盛り上げていきたいなーと思います。

 

お時間ある方はぜひぜひご参加ください。

 

では。

 

 

ARマーカー読み込んでくれない時に絶望しない為の対処法(Android+Unity+AR)

※注 今回はWIndowsネタではないです※

 

Unity使ったARアプリで小さいマーカーを読み込む時、全く同じUnityプロジェクトを使っていてiOSでは認識出来るのにAndroidで認識出来ないという事象が起こったので、その時の対処を覚え書きとして残します。

 

恐らく原因はAndroidのフォーカスの悪さが問題でマーカーか否かを判別する為の近接値がうまく取れない為、マーカーとして判別されていないと思いました。(同じ画像を拡大コピーしたら読めたので)

 

f:id:win8dev:20130227230642p:plain

Androidに組込む際にマニフェストのAutoFaucsをfalseからtrueにしているからAF効くだろうと思っていたけれど、どうやらAF効いてない気がしたので、調べたらUnity側でもフォーカスを指定出来るらしいので、Unity側で下記の処理を追加。

------------------------------------

//フォーカス宣言部

CameraDevice.FocusMode mFocusMode = CameraDevice.FocusMode.FOCUS_MODE_CONTINUOUSAUTO;

 

//Vuforiaのセットアップ部

CameraDevice.Instance.SelectVideoMode(CameraDeviceModeSetting);

CameraDevice.Instance.SetFocusMode(mFocusMode);

------------------------------------ 

すると、

 

 なんという事でしょう。

 

いままで読めなかった小さいマーカーが読めるようになりました。

推測するに、iOSはカメラの性能が良いので入れなくても何とかマーカーの特徴点を取得出来て、近似値が一致したけれどAndroidは性能が悪くて上記処理を入れてあげないとダメだったという事かと。

※UnityもVuforiaも良くわかってないからハマっただけかもしれませんが

 

ちなみにSetFocusModeやってもmanifestでAutoFocusをtrueにしてもUnityのマーカー認識画面のカメラ越しでは通常のカメラのように焦点合わせる挙動が肉眼で確認出来ないので注意です。

 

という事で今回は

 

Android AR  読み込まない マーカー オートフォーカス  認識しない  Unity」

 

とかキーワードでググっても情報得られなかったので、そんな人がまたググった時の為に書いておこうと思いました。

VisualStudio2012のインストール手順とテンプレートRSSリーダーの動かし方

ちょうど新しいPCを買ってセットアップしなきゃいけないので、これを機にゼロから開発環境準備しなきゃならない方の為に覚書を書いておきます。

PC買ったらまずは、何はなくとも開発環境をインストールしなくてはならないので、ダウンロードページに行きましょう。

http://www.microsoft.com/visualstudio/jpn/downloads

 

サイト行くとなんだか色々種類があります。

試用版は紫色、無料版のExpressは青色になっています。

Expressでもストアアプリ開発は全然出来ますので高機能な開発環境は不要という方はExpressで充分です。

 

試用版を試したい場合はといってもよほど大人数で開発しない限りはUltimateで充分です。自分もExpressで充分なのですが、今回はせっかくなのでUltimateをインストールします。まずはリンクを押すとexeがダウンロードされるので、迷わず実行します。

f:id:win8dev:20130225190238p:plain

 Ultimete全部のせでインストールすると9ギガ越えの容量を持ってかれるので、

要らないオプションは削りましょう。SharePointとかOfficeとかSilverlightとか、少なくとも使う予定無いもの削ったら1GBほど浮きました。

f:id:win8dev:20130225190255p:plain

  

で、「インストール」ボタンを押せばインストールが始まります。

結構な時間(30分くらい?)がかかるので、PCを引き続き使いたい時に実施する事はおすすめしません。時間があるときにやりましょう。

インストール完了後、「開始」ボタンを押すといきなりプロダクトキーを求められます。

 f:id:win8dev:20130225190407j:plain

 

しかし、90日間無料なのでこれは無視してキャンセルを押しましょう。

※Expressの場合はオンラインでキーを取れます

 

 キャンセルすると自動的にVisualStudioが立ち上がります。

f:id:win8dev:20130225190555j:plain

 

さあ、開発するぞ、という気になりますがゼロからだと心が折れるので、まずはテンプレートを持ってきて動かしてみたいと思います。テンプレートはMicrosoft公式ページで配布されています。

■サイト

http://msdn.microsoft.com/ja-jp/jj556277

 

今回はこの中の「RSS Reader テンプレート HTML + JavaScript 用 Version 1」を試してみます。「ダウンロード」ボタンを押すとzipファイルがダウンロードされます。この子を所定のディレクトリに置きましょう。

まずエクスプローラーを立ち上げ、「ライブラリ」フォルダの"ドキュメント"を覗くといつのまにやら「Visual Studio 2012」というフォルダが出来てます。

 f:id:win8dev:20130225190539p:plain

 

そこから以下のように潜って下さい

[Visual Studio 2012]→[Templates]→[ProjectTemplates]→[JavaScript]

JavaScriptディレクトリには何も入っていないはずなので、そこに先程ダウンロードしたzipファイルを置きます(解凍不要です)。

 

で、VisualStudioに戻って「新しいプロジェクト」を選ぶと、なんという事でしょう、一番下にRSSリーダーが出てくるようになります。 

f:id:win8dev:20130225190743p:plain

 ※取得したテンプレは同様の手順で適宜配置すれば読み込んでくれます

 

そして、いざRSSリーダーを選択します。

 

初回開発の場合、開発者登録してるか?というダイアログが上がります。

f:id:win8dev:20130225190806p:plain

 

ここまで来て水を差すな、と思います。

既にしている方はログインを、開発者登録をしていない場合は登録をする必要がありますので頑張って下さい。

 

 ■開発者登録はこちら

https://appdev.microsoft.com/StorePortals/ja-jp/Account/Signup/Start

 

※注

ここで登録を無視しても結果的にアプリはエラーとなり起動できません。大人しく登録を行いましょう。

  f:id:win8dev:20130225190903p:plain

  無事登録を終え、プロジェクトを開いたら早速アプリ起動してしまいましょう。

画面上部にある実行ボタンから実行出来ます。

 

f:id:win8dev:20130225190936p:plain

 この時、対象が「ローカルコンピュータ」と「エミュレータ」が選べますが、

せっかくなのでローカルで動かしましょう。

 

いざ、実行。

f:id:win8dev:20130225190949p:plain

 

動きました。指定したRSSからニュースを取得してきてタッチすると読めます。

 

(゚ー゚)。o○(画像の取得くらいもうちょっとちゃんとやって欲しいのですが、

MSさんが無償で用意してくれたコードなので文句は言えません)

 

テンプレートプログラムはソース全部が入っているのでRSSの向き先変えてみたりするだけで自分だけのニュースアプリが作れます。

 

このようにストアアプリはサンプル動かすだけなら本当に数分で出来ます。

最近の開発ってのは環境に恵まれてますね。

 

WindowsストアアプリをKINECTで動かしてみた。

Windows 8ストアアプリハッカソンVol.3を実施しました。

今回は「Windows 8 × KINECT」です。
 

f:id:win8dev:20130224195436p:plain

え、そもそもKINECTってストアアプリに対応しているの?
と色々な人から言われたのですが、まずはやってみようという事で小人数で何も考えず実施。
 
とりあえずどうやって実現するかなあという事で、まずは土台となるアプリ作成とKINECTをストアアプリと結合させるチームに分かれてみました。
 
土台となるアプリはとりあえずオブジェクトが動けば良いって事で「enchant.js」のサンプルを盗んでゴニョゴニョしてサクッと仕上げました。落ちてオブジェクトを左右にスクロールさせて逃げる、という単純なものです。
 
(当初は3Dモデルをレンダリングして回転させたりしたかったのですが、WebGLがエラーを吐きやがってサクッと出来なかったので断念。そもそも土台アプリ作ってもKINECT連携出来なかったら意味ない訳ですし)
 
と、ここまでやってみた所でKINECTチーム側から「単純に組み込むのはやっぱ無理そう」との判断が出ました。
 
さあどうしましょう。となりましたが、どうせ無理なのは予想は出来ていたので用意してた別案に方向転換。別案はアプリ内でKINECT認識出来ないならば、外部からKINECTの命令を送ればいい、という感じです。

外部命令はWebSocketサーバを立てて別PCに繋いだKINECTからソケット通信でストアアプリ側に命令を飛ばします。

ざっくりとした概要図はこんな感じ。

f:id:win8dev:20130224193957j:plain

 
一応、WebSocketをストアアプリがカバーしているのは公式ドキュメントも見て知っていましたし。
 
 
 
で、やってみましたが通常のWebScketのIFではさっぱり動かず。
ドキュメントを解析してMicroSoftの提供するインターフェースに書き換えたところ、
 
 
無事、KINECTでストアアプリ操作出来ました。
 
どんな動きかは動画をご覧下さい。

どんなにつまらない避ゲーでも体を使うとそれなりに盛り上がるもんですね。
 
 
でも、いかんせんゲーム内容が単純すぎてすぐ飽きました。。
 
コーディング時間も少なかったし、当初の目的通りストアアプリをKINECTで動かす事は達成したので良しとして飲みに行きます。
 
今回のアプリ側とWebSocket側のソースコードはきっちり全部GitHubにて公開しています。
 
ソースコードはこちら
 
 
もっと時間かければちゃんとアプリをKINECTで動かせると思うのでご興味ある方は是非チャレンジを。とりあえずチャレンジ成功って事で、またチャレンジ企画考えます。