かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Xamarin

SDK StyleのプロジェクトファイルをUWP, Xamarinで使いたい

ReactiveProperty のパッケージ分割するにあたってやろうとしてるんだけど標準だときびしい…?ということで MSBuild.Sdk.Extras というパッケージを使いました。 空のクラスライブラリを作って Sdk 属性に MSBuild.Sdk.Extras/2.0.54 を設定して TargetFrame…

Visual Studio App Center の MBaaS 系機能を Xamarin.Froms(Android) から使う記事を書きました

ここではないブログに書きました!興味があったら下から読んでください。 techcommunity.microsoft.com

VS2019 の Xamarin.Forms で Resource.Designer.cs ファイルでビルドエラーになる

こんなファイルが生成されてエラーになる件について。 // aapt resource value: 0x7F010174 public const int bottomtab.navarea = 2130772340; // aapt resource value: 0x7F010175 public const int bottomtab.tabbar = 2130772341; これっぽいです。 gith…

Xamarin.Forms の Shell のプロジェクトテンプレート見てみた

VS 2019 RC で Xamarin.Forms プロジェクト作成しようとしたら Shell がありました。(前はなかったよね? ということで、プロジェクト新規作成して Shell ってどんなもの?っていうのを見てみようと思います。 最終的にはドキュメントもちゃんと見ないとい…

Xamarin.Forms の最近の機能で気になってるやつ

Xamarin.Forms 3 系あたりからさっぱり追いかけてなかったので復習も兼ねて。 といいつつ 2.x の機能を見てると、ここらへんもきちんとやったことないので、2.x 系から怪しいかもしれない? docs.microsoft.com 因みに Xamarin Android や iOS のほうは OS …

Prism 7.x で DI コンテナ固有の機能を使いたい

Prism 7 系で色々仕様変更がありましたが、その中でも大きな変更のうちの 1 つが DI コンテナにクラスを登録する処理の変更です。今までは各 DI コンテナのクラスを直接触っていましたが IContainerRegistry インターフェースというインターフェースが Prism…

Xamarin.Forms で AI をアプリに組み込んでみよう(UWP, Android, iOS)

Android は TensorFlow、iOS は CoreML、Windows 10 は onnx という感じで各 OS でディープラーニングの学習モデルをサポートするような API が追加されてきてますね! Xamarin.Forms を使えば Android, iOS, UWP アプリの開発が同時に出来る(UI を各 OS ご…

Prism の v7.1 がリリースされてました

Prism v7.1 が2週間ちょっと前にリリースされてました。 github.com かなり大きな更新に見えます。 個人的にインパクトが大きそうだと思ったのが Autofac と MEF が Prism の将来のサポート対象から外れてしまうことでしょうか。 Autofac はイミュータブルに…

Prism.Forms 7.1 の新しい XAML でのナビゲーション定義

Xamarin.Forms 向けの Prism の 7.1 (2018/07/17 時点で preview)で便利な機能が追加されてたので紹介します。 ドキュメントページはこちら。 Xaml Navigation | Prism これが無い時はどうしてた? 画面遷移するだけの DelegateCommand 型のプロパティを定…

Xamarin のドキュメントが docs.microsoft.com にマージされました

Today with the merging of Xamarin's documentation into https://t.co/unpxXDwWGo, we also opensourced our documentation: https://t.co/JPVzovjb9M— Miguel de Icaza (@migueldeicaza) 2018年3月14日 やったぜ!! 嬉しい副作用としては、機械翻訳です…

Prism.Forms.Unity を .NET Standard プロジェクトにしてみよう(無理やり感)

Xamarin.Forms 2.4 が .NET Standard 2.0 化したこともあり .NET Standard の機運が高まってまいりました。 Prism のほうも 7.0.0 で .NET Standard 対応っぽいのでいい流れです。 最近のライブラリは .NET Standard 前提で作られてるものもチラホラ出てきて…

CoreML を Xamarin.Forms で使ってみよう

なんか iOS 11 から CoreML ってのが使えて簡単にいうと機械学習の学習結果を iOS ローカルで動かせるぜ!っていう感じのものらしいですね。強い。 ということで、Apple Developer と Xamarin のドキュメントを見ながら試してみたいと思います。 Core ML | A…

Visual Studio Mobile Center の Push を試してみよう Android編

プッシュ通知ってめんどいですよね。 ということで Visual Studio Mobile Center の Push を試してみようと思います。Android, iOS, UWP あたりに対応してるらしいですが、とりあえず私の好きな Xamarin.Forms を使って Android に対して対応してみようと思…

Visual Studio Emulator for Android でネットワークにつなぐ

まぁ普通は標準のエミュレータ使いますよね。 でも世の中には Hyper-V が必須な人もいるでしょう。 そんな人は Visual Studio Emulator for Android を使うことになると思います。 ただ Visual Studio Emulator for Android では Marshmallow までしかエミュ…

Xamarin.Forms のプロジェクトでフォルダパスが長すぎてエラーになってしまうときの対処法 その2

ちょっと前にこんな記事を書きました。 blog.okazuki.jp コメントでジャンクション使ってみたらどうですか?と言われたので調べてみたら mklink コマンドってので作れるみたいですね。今回は、mklink コマンドを使って適当にシンボリックリンクを張る方法で…

Xamarin.Forms のプロジェクトでフォルダパスが長すぎてエラーになってしまうときの対処法

続編書きました。 blog.okazuki.jp 最近 Xamarin.Forms のプロジェクトを新規作成したあとにビルドエラーになるというかプロジェクト作成すらままならないという状況に出会うことが増えました。 まぁ本質的にはパスの長さの問題なので別にXamarinに限った話…

KAMISHIBAI for Xamarin.Forms を Prism で使ってみよう

nuitsさんが面白そうなものを作ってました。 www.nuits.jp さて、個人的に気になるのは Prism と組み合わせた場合の方法。なんたって Prism にも組み込みの画面遷移機能があるので。 考えたこと1 Prism の画面遷移機能は原理的に画面遷移を行うための機能を…

【東工大生限定招待】 Xamarin ハンズオンラーニング with JXUG,MSP で発表してきました

東工大でXamarin関連のことについて話してきました。そこでの資料を公開します。 Xamarin でのモバイルアプリ開発 周辺基礎知識 from 一希 大田 www.slideshare.net

かずきのXamarin.Forms入門を更新しました

5か月ぶりくらいに内容をアップデートしました。 SlideShareにサインインするとダウンロードボタンが表示されるので、そこからダウンロードしてご利用ください。 Xamarin.forms入門 from 一希 大田 www.slideshare.net 変更内容 Xamarin.Forms 2.3.4ベースの…

Bot FrameworkのDirect Line APIをXamarin.Formsから使う場合のサンプルプログラム

を書きました。 .NET Standardにしないといけなかったりとちょっと手間取りましたが、なんとか動く感じになりました。リポジトリは以下になります。 github.com Bot Frameworkを使えば簡単にBotを作れるので、作ったBotを自分のアプリに組み込む際の参考にし…

Prism.Forms でプラットフォーム固有処理を呼び分ける方法

Xamarin.Forms にも標準で DependencyService という機能があるんですが、こいつよりも柔軟な素敵な機能が Prism.Forms には提供されています。 IPlatformInitializer それは IPlatformInitializer です!これは、Prism.Forms のDIコンテナへのインスタンス…

Xamarin.Forms と Azure の組み合わせサンプル書いてみたよ

Microsoft Cognitive Services を使ったサンプルを ABC 2017 Spring で作ってみたら動かなくて悲しい目にあったので、全部スマホでやってた処理を、きちんとサーバーサイドとクライアントサイドにわけてデータも1度処理したものは永続化してというのをやって…

#decode17 に参加してきました(登壇側で)(ほぼ技術的なエントリではないです)

5/23 - 24 で開催された Microsoft の主催する開発系イベントの de:code 2017 に登壇者側で参加してきました。de:code は、初回から前回まで一般参加者として参加してきたので割と思い入れのあるイベントでした。今年は Microsoft に転職して最初の de:code …

Xamarin + Visual Studio Mobile Centerをやってみよう

Visual Studio Mobile Centerは、モバイルアプリを開発する際に必要になる以下の機能を提供してくれる便利なやつです。 リポジトリ(GitHub, VSTS, Bitbucket)と連携しての自動ビルド Xamarin.UITestなどのテストコードをプールされた様々な実機上で実行 アプ…

Xamarin.FormsでBotFrameworkのDirectLineを試す

自分用メモです。(雑です) PCLを辞めます。 .NET Standardにプロジェクトを変換します。 以下をプロジェクトに追加する。 Micrsoft.Bot.Connector.DirectrLine Microsoft.Rest.ClientRuntime こんな感じに書けば動いた!とりあえず

JXUGC 22 最新事例&お前のアプリを説明してもらおうの会で発表してきました

XAML入門というテーマで発表してきました。スライドを公開します。 XAML入門 from 一希 大田 www.slideshare.net

Xamrin.FormsでBLEのアドバタイズパケットを拾おう(要はビーコン)

ということで、Xamarin.FormsでBLEやってみようと思います。 スキャンして、近くのパケット拾って来るのがゴールくらいにしておきましょう。 BLEを使おうとすると、ネイティブのコードを書かないといけないのですが、幸いにもプラグインのリストにBluetooth …

Xamarin.Formsでグラフを描こう(OxyPlot)

WPFでグラフを描けるライブラリを探してたらOxyPlotというのを見つけました。 見つけたと思ったら、こいつXamarin.Formsでもできるぞ!?ということで試して見ました。 NuGetの追加 以下のパッケージを追加します。 OxyPlot.Xamarin.Forms 初期化 以下のコー…

かずきのXamarin.Forms入門を更新しました

すっかりDataTemplateSelectorについて書くのを忘れてたのでSlideShareのPDFとKindleを差し替えました。 Kindleは反映までに1日くらいかかるのと、おそらく既に購入された方には変更は届けないとAmazonが判断すると思います…(よっぽどインパクトの大きな変…

Prism.FormsでAutofacを使ってみよう

Xamarin Studioベースで話を進めます。(Visual Studioでもだいたい同じになると思うけど) まずForms Appを新規作成してPCLで作ります。 NuGetから以下のパッケージを追加します。 Prism.Autofac.Forms Views名前空間を作って、そこにMainPage.xamlを作成し…