記事の中では写真に対して画像認識していますが、写真の元となった物自体にかざしても形状や向きによってはAR表示ができるときもあるので実際にやってみるとすごく面白かったです。
Ubuntu on Windowsを日本語環境にする方法は、Ubuntu 14.04.4 LTSを日本語環境にする方法と同じです。
まず、日本語関連のパッケージをインストールしましょう。
aptitude -y install language-pack-ja-base language-pack-ja ibus-mozc
しばらく時間がかかりますがインストールが完了したらシステム環境を日本語に変更します。
update-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
source /etc/default/locale
echo $LANG
これでUbuntuからの応答が日本語になります。
--------- こっから先は、きっとダメな方法なので、実際にやらない方がいい
これでもまだ日本語入力はできないので、fcitx-mozcを入れます。
sudo apt update
sudo apt install fcitx-mozc fcitx-anthy
im-config ?n fcitx
これで一度exitして再度bash on Ubuntu on Windowsを起動してみます。
どうまうまくいきません。これは設定不足の可能性もあるのでもう少し調べてみます。
Windows 10でbashが使えるようになったと巷で話題の「Windows Subsystem for Linux」を使ってみましょう。
Windows Subsystem for Linuxは、開発者向けに提供されています。[設定]-[更新とセキュリティ]-[開発者向け]で、「開発者向け」オプションを選択しておいてください。
この新しいWindowsの機能は、2016/04/09現在、Insider Preview 14316での提供なので、なにも設定していない場合や企業内でWindows Updateでの配布が企業ポリシーに基づき行われているような場合は、まだ使うことができない状態です。
Insider Previewを入手できるようになるには、[設定]-[更新とセキュリティ]-[Windows Update]の[詳細オプション]でInsider Previewビルドを「ファースト」で入手できるようにしておきます。
Insider Previewは「ファースト」と「スロー」があります。「ファースト」とはいわゆる人柱モードで、開発者ならば誰でも心躍る最新機能を世界トップスピードで使えるようになるモードです。
このモードにするのに必要なのは「問題が発生したら怒るのではなく世界で初めて見つけたかもと心ワクワクして改善するための提案やアイデアをリクエストする」というフロンティアスピリットです。
無事にInsider Preview 14316が適用できたら[プログラムと機能]-[Windowsの機能の有効化または無効化]リンクから[Windowsの機能]ダイアログを表示しましょう。
ダイアログが開いたら「Windows Subsystem for Linux (Beta)」にチェックして[OK]ボタンをクリックします。
機能が有効になり再起動したら、OS画面左下の検索ボックスに[bash]といれてみましょう。検索ボックスを非表示にしているなら、左下のWindowsマークを軽くクリックした後に「bash」とキーボードをたたいてみましょう。
bashが第一候補として表示されます。
初回起動時はUbuntu on Windowsのインストールを行います。
つまり、「bashが使えるようになった!」というのは、bash.exeのようなコマンドプロンプト用実行ファイルがインストールされるということではなく、Windows上で動くUbuntuがインストールされるということになります。
また、この仕組みは仮想化により実現しているわけではなく、LinuxのシステムコールをリアルタイムにWindowsのシステムコールに変換する技術が使われている。
そのためインストールしてしまえば起動も早く、また、動作も早いため非常に快適です。
そういえば、Project AstoriaでAndroidアプリがWindows上でそのまま動く仕組みを開発していたと思うのですが、これもその流れの技術なのでしょうか。
インストールが終わったらlinuxらしいコマンドを入力しましょう。すなわち「ls」です。
WindowsのCドライブは/mnt/c/なのでC:\tempフォルダの中身を見たいときは、ls /mnt/c/tempになります。
まずは「sudo apt-get update」を入力して導入済パッケージのアップデートをしておきましょう。
Ubuntu on Windowsのバージョンを確認してみましょう。
lsb_release ?a と入力するとUbuntu 14.04.4 LTSとでてきます。
viなんかも使えますね。
あと日本語ですが普通に表示できますね。
ただ、このままだと表示はいいですが日本語入力手段がありませんね。
Ubuntu on Windowsを日本語環境にする方法は、Ubuntu 14.04.4 LTSを日本語環境にする方法と同じです。
まず、日本語関連のパッケージをインストールしましょう。
aptitude -y install language-pack-ja-base language-pack-ja ibus-mozc
しばらく時間がかかりますがインストールが完了したらシステム環境を日本語に変更します。
update-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
source /etc/default/locale
echo $LANG
なお、使えるようになったといっても、現時点では、Windows 10 Insider Preview 14316で、さらにWindows Subsystem for Linuxもベータ版だということをまず覚えておきましょう。何かあったとしても鬼の首を取ったように騒ぐのではなく、不具合見つけたら積極的に報告、特に日本語環境の不具合は私たちが報告しないと始まらないですからね。
前回のつづきです。
インストールが無事に完了したら、早速、Visual Studioを起動してみましょう。
[ファイル]-[新しいプロジェクト]メニューをクリックすれば言語ごとに作成できるテンプレート一覧が表示されます。
Android / Cross-Platform / iOSあたりがXamarinのテンプレートになります。
[Android]
Blank App (Android)
Wear App (Android)
WebView App (Android)
Class Library (Android)
Bindings Library (Android)
UI Test App (Xamarin.UITest | Android)
Unit Test App (Android)
[Cross-Platform]
Blank App (Native Portable)
Blank App (Native Shared)
Blank App (Xamarin.Forms Portable)
Blank App (Xamarin.Forms Shared)
Class Library (Xamarin.Forms)
UI Test App (Xamarin.UITest | Cross-Platform)
[iOS]
[Apple Watch]
Watch App (Apple Watch)
[Extensions]
Action Extentions (iOS)
Document File Provider Extentions (iOS)
Document Picker Extentions (iOS)
Photo Editing Extentions (iOS)
Share Extentions (iOS)
Today Extentions (iOS)
Custom Keyboard Extentions (iOS)
[iPad]
Blank App (iPad)
Master-Detail App (iPad)
ScenceKit Game (iPad)
Signle View App (iPad)
SpriteKit Game (iPad)
[iPhone]
Blank App (iPhone)
Master-Detail App (iPhone)
ScenceKit Game (iPhone)
Signle View App (iPhone)
SpriteKit Game (iPhone)
[Universal]
Blank App (Universal)
Master-Detail App (Universal)
OpenGL Game (Universal)
ScenceKit Game (Universal)
Signle View App (Universal)
SpriteKit Game (Universal)
Xamarinだからといって、AndroidとiOSの両方作らないといけないかといえばそんなことはありません。
同じコードで書けるのだからせっかくなのでという程度のお話。
なのでAndroidやiOSだけのテンプレートでアプリを作るのも楽しいと思います。
とはいえ、やっぱり両方一度に作るのがXamarinの醍醐味ですから、[Crass-Platform]の「Blank App (Native Shared)」か「Blank App (Xamarin.Forms Shared)」あたりのテンプレートを選んでみるのがいいでしょう。
PortableじゃなくてSharedなの?という点については、好みの問題ではあるかもしれませんが、Sharedの方が素性がよい気がしています。
Blank App (Native Shared)は、画面定義は、iOSはStoryBoard、Androidはaxml、WindowsPhone8.1はXAMLとそれぞれネイティブアプリを作成するときの画面定義と同じ定義で画面が作成できるテンプレートです。すでに画面定義があったり各OSの書籍を参考にするときなどに便利です。
Blank App (Xamarin.Forms Shared)は、画面定義もXamarin.Formsという画面定義を使って3OSの画面を(別々に定義でもいいし、同じ定義でもいい)定義します。
定義形式は、XAML形式ですがUWPのXAMLとは要素名などが異なります。このあたりは今後どう統合されていくのか楽しみな部分です。
Xamarinは日々進化しています。特にXamarin.Formsの更新速度が速くテンプレートで使われているものよりも最新版がnugetで提供されています。
テンプレートからプロジェクトを作成したら、各プロジェクト名を右クリックして[NuGetパッケージの管理]で[更新プログラム]タブから更新を行ってください。各プロジェクトごとなので合計3回実施します。
build 2016で発表があったようにVisual StudioユーザーであればXamarinは無料で使えます。
例外は、企業ユーザーでVisual Studio Expressを使っている開発者さんだけですね。
個人開発者やOSS開発者であえば、Xamarinのサイトから無償のVisual Studio Community Edition + Xamarinをダウンロードすればよいですし、有償のVisual Studio (EnterpriseとかProfessional)をお使いであれば、XamarinサイトからXamarin for Visual Studioがダウンロードできます。
https://www.xamarin.com/download
OSはWindows 7 SP1以上で使えますが、おすすめはもういっそのこと無償アップグレードできるんですからWindows 10に上げてしまうことです。
Visual Studio Enterprise 2015だと次のような機能にチェックをつけてインストールするといいでしょう。
:
:
■Windows 8.1およびWindows Phone 8.0/8.1ツール
□クロスプラットフォームモバイル開発
■C#/.NET (Xamarin)
□HTML/JavaScript (Apache Cordova) Update 8
□Visual C++ モバイル開発
■Android用Microsoft Visual Studio エミュレーター (2016年1月)
□共通ツールおよびソフトウェア開発キット
■Androidネイティブ開発キット (R10E, 32ビット)
□Androidネイティブ開発キット (R10E, 64ビット)
■Android SDKセットアップ(API 19および21)
□Android Ant (1.9.3)
■Java SE開発キット (7.0.5501.13)
□Joynet node.js
□共通ツール
■Git for Windows
■Visual Studio 向け GitHub拡張
■Visual Studio 拡張性ツール Update 2
このあたりをチェックするとかなりインストールに時間がかかります。
時間の余裕があるときに行うようにしてください。
昨年に引き続き、Microsoft MVP for Windows Development再受賞しました。
毎年この時期はどっきどきなのですが、ひとまずよかったです。
今年は、自社アプリのUWP版がいよいよリリースされますし、さらなる機能拡張計画もあるので、ぜひ実現していきたいと思います。
channel 9にアップロードされていたbuild2016の資料で「UWPアプリにおける正しいnetworking APIの使い方」というセッション資料が気になったので翻訳してみました。