はつねの日記

Kinect, Windows 10 UWP, Windows Azure, IoT, 電子工作

Xamarin 4.0 RC0のMac OS連携が素晴らしい

Xamarin 4.0 RC0が登場しました。現行のXamarin 3からのメジャーバージョンアップとなります。Microsoft製品のRC版と比べると品質的というか機能的な面でちょっと不安な点もありますが、それはリリースしてから怒涛勢いで治っていくでしょう。

そういった点はとりあえずおいておいて、メジャーバージョンアップによる新しい環境にいち早くなれるためにもRC0を早速入れてみました。

RC0の入手方法は

https://blog.xamarin.com/introducing-our-first-release-candidate/

ここから。

「Be First To Try Our New Release Candidate

ということなのでやっぱりトライしないとですね。

 

まずは、Windows版をダウンロードしてインストール。サクッと既存のXamarin 3が置き換わってくれます。もちろん、Visual Studio 2015のAdd-InもOK。

 

さて次はMac版。あれ?どうやってやるの?

とりあえずダウンロード。imgファイルなのでマウントして中のインストーラーを起動。

スクリーンショット 2015-10-09 1.37.46

さくさくーっと進みます。

 

さて、Xamarin 4で何が変わったかといえば、Windows上のVisual StudioからMac OSをビルドマシンとしてXamarin.iOSでビルドする時の流れ。

 

まず、Xamarin.iOSのプロジェクトを開くとビルドマシンとつなぎに行こうとすることがなくなりました。本当に必要最小限の接続になりました。

そして、従来であればMac OS側でアプリを立ち上げておかないといけなかったのが、Xamarin 4からはMac OS側でリモートログインの許可をしておくだけ。

スクリーンショット 2015-10-09 1.58.25

そうしておけば、あとはWindowsからMacsshでつなぐだけ、ファイアウォール越しでも22番ポートが空いていればいいので、自宅のMacOSをビルドマシンとして外出先でXamarin.iOSアプリを開発することだって可能です。

 

さて、Mac OS側にXamarinが入ってリモートログインの設定も終わりました。

Windows側でVisual Studioを立ち上げて…あれ……うまくつながりません。

 

そんな時は、Visual Studioの[ツール]-[オプション]でXamarinの設定を確認してみましょう。

Xamarin Mac Agentに接続先のMacを見つけさせて、Mac上のApple SDKの位置も(大抵は、/Applications/Xcode.app でOK)の位置も設定しましょう。

XamarinMacAgent

 

これが終われば準備完了。

Visual Studioで[ツール]-[iOS]-[Show iOS Simulater]をクリックすると間髪入れずにMac OS側でシミュレータが立ち上がるのは壮観です。

ぜひ、一度お試しください。

OMRONヒューマンビジョンコンポ「家族目線」

家族目線ことHVC-C2Wが届きました。

WP_20150922_001

 

HVC-Cといえば、

plus-sensing.omron.co.jp

こちらの作品でも使っているHVC-Cが思い出されますが、HVC-C2Wは「ヒューマンビジョンコンポ=HVC」シリーズですが、2Wとついているように後継機というよりも画像もとれる別新製品です。

 

なので、筐体もこんな感じでカメラレンズが見えます。

WP_20150922_002

なんかもう笑顔にしかみえないですね。

 

これ、Android用サンプルアプリのapkをいれるとWindows 10 Mobile用のUWPアプリとして動いたりしないかな。

Olympus AIRの通信仕様書アルファ版が公開されていた

opc.olympus-imaging.com

 

OPCのアプリをWindows Phone用に移植しようとしたり、xamarin化しようとしたときにiOSAndroid用のSDKから焼直す必要がありました。

機能も多く必要な箇所だけを移植するのがやっとだったのですが、2015/6/23に1.0アルファ版ですが通信仕様書が公開されていました。

これがあったら苦労しなかったのなぁと。同時にこれを使ってWindows Phoneでアプリ作れます!

大雑把な仕様としては次のようにhttpとUDP/IPでのやりとりになりますね。

  • コマンド送信:http-get/post
  • ライブビュー画像転送:UDP/RTP
  • イベント通知:TCP

イベント通知って何かといえば、例えばピントが合ったとか撮影が完了したのように依頼してから時間がかかるような処理についての完了結果(成功/失敗)などがイベントで通知されます。

なお、AIR自体がDHCPサーバーとなっているのでAIRをアクセスポイントとみなして接続、あとは固定IP宛に送受信ということになります。

 

CodezineにXamarin用コントロールXuniの記事が公開されました。

codezine.jp

Oracle Mobile CloudにXamarin用のSDKが登場

Oracle Mobile CloudにXamarin SDKが登場しました。

https://blog.xamarin.com/xamarin-and-oracle-join-forces-to-build-better-enterprise-apps/

 

Microsoftは、mBaaSであるMicrosoft Azure Mobile ServicesにXamarin用SDKを提供していて、Xamarinを使ったiOSアプリやAndroidアプリからAzureが使いやすいように考慮してくれていました。

オラクルにもクラウドがありmBaaSとしてOracle Mobile Cloud Serviceがあるのですが、同時にオラクルにはOracle Mobile Application Framework (MAF) もあるため、iOSアプリやAndroidアプリ作るならば、MAFを使いましょうというスタンスでした。

 

Oracle MAFというのは、Cordvaをベースにしてロジック部分をJavaで書けるようにしたオラクル独自のiOSAndroidの2つのプラットフォームに対応したモバイルアプリ開発環境です。

思想的にはOracle JDeveloperとか古くはOracle Developer 2000とかそういったところからの流れで、データベースができていればそのテーブルからO/Rマップ的な定義を経由して画面にドラッグアンドドロップでデータ表示できるような画面が簡単につくれたりします。

一方、Xamarinは、.NET FrameworkオープンソースであるMonoからの流れを受け継いでいてC#を使ってiOS/Android/Windows Phoneなどのアプリを作成することができるマルチプラットフォーム開発環境です。

 

コード例:

//Authenticate
bool success = await backend.Authorization.AuthenticateAsync("username", "password");

var storageService = backend.GetService();
var collection = await storageService.GetCollectionAsync("SampleFiles");

//Insert all types of data into storage
var newObject = new StorageObject(collection);
newObject.Name = "TestFile.txt";
newObject.LoadPayload("This is a plain text example, we can insert images or other blob data",
   "plain/text");
await collection.PostObjectAsync(newObject);

Meets IT and AEDが日本心臓学会の心臓関連イベントに掲載されました。

今週土曜日のイベントが日本心臓学会の心臓関連イベントに掲載されました。
http://www.jhf.or.jp/heart_news/2015/003868/

 

当日は可能な限りWindows 10 Techical Previewを使ってお話させていただきます(AED検索はWindows 10でもWindows 10 for Phoneでも動作検証済)。

タイムテーブルは次のようになっています。

10:00-10:15 開場・受付  
10:15-10:30 キーノート 本日の主旨、AED利用率、AED設置状況、AEDオープンデータプラットフォームの状況を踏まえ、開発者が今後AEDやCPRに関するアプリを作る際に、今回の取り組みがどう活かせるのかの未来をお話します。
10:30-11:45

CPR+AED体験

(第一部)

3人チームで、発見からAED利用までの流れを模擬体験します(役割交代で3回実施)。
11:45-12:45 昼食  
12:45-13:15 グループでアイデアディスカッション  
13:15-13:45 イデア発表  
14:00-15:00

CPR+AED体験

(第二部)

3人チームで、発見からAED利用までの流れを模擬体験します(役割交代で3回実施)。
15:00-15:30

"おやつタイムLT大会"

CLR/H

 
15:30-16:00 AEDオープンデータAPIハンズオン AEDオープンデータプラットフォームのデータを使って地図に表示してみよう。
16:10-16:40

AED検索を実現している技術

AED検索を実現している、AEDオープンデータプラットフォーム(Azure)、Windowsストアアプリ(C#)、Androidアプリ(Xamarin)などを実現している技術を解説します。
16:40-17:00 撤収  
17:30-19:30 懇親会  

 

まだまだ参加枠には余裕がありますのでぜひご参加ください。

http://kokucheese.com/event/index/284223/

Human Sensing Frontier Award #01グランプリの賞品がとどきました

オムロン製品が届くという事で楽しみにしていました。ほんと、分かってらっしゃるというセレクトです。

 

NeckMassager
オムロン ネックマッサージャ ブラウン HM-141-BW

オムロン ネックマッサージャ ブラウン HM-141-BW

 

活動量計

肩こりというか首が辛い時があるので本当に助かります。ありがとうございます。

 

WP_20150324_001

 

WP_20150324_002