かずきのBlog@hatena

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

2016-01-01から1年間の記事一覧

Visual Studio 2015でTypeScript 2.0 RC + React + ASP.NET Coreの組み合わせをやる方法

JavaScript界隈のフレームワークの組み合わせがファッキンホットですよね。個人的にはreactに頑張ってほしいと思いつつAngularJSも2が正式リリースされたら追いかけてみようかなというスタンスです。 といいつつ、最近reactを放置してたら自分のフィールドの…

Visual Studio Codeを英語化する

日本語でもいいんですけどね。なんとなく気分転換に英語にしたかったのです。 Ctrl + Shift + Pでコマンドパレットを出してlanguageと打ち込むとConfigure Languageというのが出てきます。 これを選択するとlocale.jsonが生成されます。 { // VSCode の表示…

Visual Studio CodeでC#のコンソールアプリケーションを作る環境を整えよう

Visual Studio本体を入れるのはだるいし、ちょっとした実験するのに、わざわざVS立ち上げるのはだるいという感じの時はVisual Studio Codeで作れる環境を用意しておくのもいいかもしれません。ということでVisual Studio Codeが入ってるという前提で、そこか…

Visual Studio Codeで自由自在にUMLを描こう

追記 私の作ったプラグインよりも、かなり出来がよさそうなものがリリースされています。 そちらを使ったほうが幸せそうです。 marketplace.visualstudio.com 本文 先日PlantUMLというテキストでUMLを描くためのツールのVisual Studio Codeのプラグインを作…

Visual Studio Code用PlantUMLプラグインのokazuki PlantUMLのv0.0.4をリリースしました(本日2回目)

3時間前くらいにもアップデートしてましたが、使ってて、これほしいなって機能が出てきたので機能追加してリリースしました。 PlantUML Exportコマンドを追加しました。このコマンドを実行するとPlantUMLのテキストと同じフォルダにPNG形式でファイルをエク…

Visual Studio Code用のPlantUMLプラグインをアップデートしました

Yusuke Itoさんからプルリクエストを頂きました。 PlantUMLのWindowが出ないようになりました txt以外の拡張子もサポートしました ぜひVisual Studio Codeでumlあたりで検索して使ってみてください! marketplace.visualstudio.com

Visual Studio CodeでPlantUMLのプレビューができるokazuki PlantUMLプラグイン作ってみました

勉強がてら、PlantUMLをプレビューできるVisual Studio Codeの拡張機能を作ってみました。 marketplace.visualstudio.com PlantUMLは、テキストでUMLを記述したりできる便利なやつです。広告が激しいページですけど以下からDLできます。 http://ja.plantuml.…

Visual Studio Codeの拡張機能で環境変数を取りたい取得したい!

ここらへんになるとnode.jsとかelectronの範疇になるんですね。 一生懸命VS Codeの拡張機能のAPIリファレンス眺めてて悩んでました。 ということでprocess.envから取得できます。先日作ったjava -versionを出力ウィンドウに出力するプログラムをJAVA_HOME環…

Visual Studio Codeの拡張機能で外部コマンドを実行したい

そんなプラグイン作りたい時もありますよね? ということでやり方。 importでchild_processを読み込んで、それのexecを呼ぶだけです。yo codeで作成したTypeScriptのプロジェクトだと以下のような感じ。java -versionを出力ウィンドウに出しています。 'use …

Android Studioでjarを作りたいメモ

こちらのBlogを参考にして無事できました。 isopan.hatenablog.jp gradleさえ書ければなんでもござれな感じなんですね。gradle弱者にはつらい世界だ。

ASP.NET CoreがVisual Studio Codeで動いたよ on Windows 10

簡単にメモっておきます。まずはdotnetコマンドがないと話しになりません。私の場合はいつの間にか(たぶんVS2015のASP.NET Coreの入れたときだと思う)入ってたのでこの手順は踏んでませんが、以下のページからSDKあたりを入れておく必要があると思います。…

Visual Studio Codeでbeta版のTypeScriptを使う方法

以下のコマンドでbetaのTypeScriptを入れたとします。 npm install -g typescript@beta でもVisual Studio Codeは、通常の設定だと安定板のTypeScriptをターゲットにしています。 そんなときは、ファイル→基本設定→ユーザー設定を開いてTypeScriptのlib.*.d.…

Xamarin AndroidでRelativeLayoutを見てみよう

過去記事 Xamarin.AndroidでHello world - かずきのBlog@hatena Xamarin.Androidで画面遷移してみよう - かずきのBlog@hatena Xamarin AndroidでActivityにライフサイクルを確認してみた - かずきのBlog@hatena Xamarin AndroidでLinearLayoutを見てみよう -…

Xamarin AndroidでLinearLayoutを見てみよう

過去記事 Xamarin.AndroidでHello world - かずきのBlog@hatena Xamarin.Androidで画面遷移してみよう - かずきのBlog@hatena Xamarin AndroidでActivityにライフサイクルを確認してみた - かずきのBlog@hatena LinearLayout 要素を縦と横に並べることができ…

Xamarin AndroidでActivityにライフサイクルを確認してみた

過去記事 Xamarin.AndroidでHello world - かずきのBlog@hatena Xamarin.Androidで画面遷移してみよう - かずきのBlog@hatena Activityのライフサイクル Activityのライフサイクルについて説明します。Activityのライフサイクルで呼び出されるメソッドは以下…

Xamarin.Androidで画面遷移してみよう

過去記事 Xamarin.AndroidでHello world - かずきのBlog@hatena 画面遷移してみよう ここでは、Andoridの画面遷移について説明します。Andoridでは、画面遷移にIntentというものを使います。このIntentは、とても汎用的なメッセージング機構でサービスとよば…

Xamarin.AndroidでHello world

ハローワールドを通じて、簡単なアプリケーションの開発の流れを見てみようと思います。Visual Studioのプロジェクトの新規作成から「Android」→「Blank App(Android)」を選択します。 「HelloWorld」とプロジェクト名をつけてプロジェクトを作成します。…

Androidで定期的に処理を実行したい

そんなときはAlarmManagerを使います。 使い方はPendingIntentを作ってAlarmManagerを取得してsetRepeatingする感じ。 一回こっきりでいい場合は、setメソッドでもいいみたいですね。 詳細はAlarmManagerのドキュメントを見よう。 AlarmManager | Android De…

Android 6.0でGeofencingをしてみた

Android 6.0とかパーミッションまわりがめんどくさいんですね…。 ということで自分用メモです。 まず、permissionを設定します。AndoridManifest.xmlに以下の定義を追加。 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 追加するのはmanifestタグの直下ですね。 gms使うっぽいので、build.gradle(Module:</uses-permission>…

.NET Standard 1.1のプロジェクトをPCL(.NET Standard 1.2相当)から参照すると警告が出てDLLが生成されない?

先ほどReactiveProperty v3.0.0をリリースしたのですが、PCLから参照できないので困ってます。(Xamarinは.NET Standard化することでお茶を濁してる) 現象としては.NET Standard 1.1のクラスライブラリを作る。 PCL(.net451とwin81をターゲット)から.NET S…

ReactiveProperty v3.0.0をリリースしました

Reactive Extensions 3.0.0に対応したReactiveProperty v3.0.0をリリースしました。 新機能はありません! インストールはNuGetからお願いします。 www.nuget.org Windows 8.1とWindows Phone 8.1をサポート対象から外しました。(Windows 8.1では動くんだけ…

Xamarin.AndroidからJavaのネイティブライブラリ(jarね)を使おう

お題の通りやってみようと思います。 今回挑戦したのは癖のなさそうな、Apache CommonsのLangです。ここからjarをダウンロードしました。 Lang – Download Apache Commons Lang バージョンは現時点で最新の3.4にしました。 前提知識としてBindings Libraryと…

アニバーサリーアップデートでのコンパイル時データバインディングの強化点 Functions in binding paths

なんて訳すんでしょうね。バインディングパス内関数とか? アニバーサリーアップデートと共に降ってきたBuild 14393のSDKですが、こいつをMin versionに設定したプロジェクトでのみコンパイル時データバインディングの新機能が有効になります。つまりアニバ…

InkToolbarを使おう

ついに来ましたアニバーサリーアップデート!!目玉はなんといっても定規ですよね!! そんな定規を簡単にアプリに組み込むことができるInkToolbarというコントロールがあります。使い方は簡単です。InkCanvasとセットで画面において、TargetInkCanvasプロパ…

Visual Studio上のXamarin.FormsでReactiveProperty v3.0を使う方法

Rx 3.0対応しているRP 3.0ですが、まだpreリリースです。何故なら、Xamarin.Androidで参照追加するとコンパイルエラーになるから…! ということで、とりあえず使い方を試行錯誤しながら書いていこうと思います。 まず、プロジェクトを作ります。作ったら以下…

CordovaでProxyを突破しよう

まず、Node.jsのProxy設定が必要になります。 npm config set proxy http://ユーザー名:パスワード@example.com:8080 npm config set https-proxy http://ユーザ名:パスワード@example.com:8080 ユーザー名がメアドな人は@マークとかをエスケープしないとい…

WPFからUWPのAPIを使ってBLEの操作をしよう

WPF

さて、UWPのAPIを使えるということで先日アドバタイズパケットの受信をやりました。 blog.okazuki.jp 今度はBLEの通信をしてみたいと思います。 参考ページは以下。 blog.fenrir-inc.com そして、今回使うセンサーはSensorTagのv1です。 www.tij.co.jp Windo…

Office 365の機能をUWPから叩く方法

UWP

Office 365のAzure ADでアプリケーションを作成します。ネイティブアプリケーションとして作成しておきます。 他のアプリケーションに対するアクセス許可でOffice 365 Exchange Onlineを追加して適当なアクセス許可を与えておきます。 クライアントIDを控え…

ASP.NET(Azure WebApp)でMicrosoft.Office365.OutlookServicesを使って予定をとってくる

超苦労したのでメモっておきます。 まず、Office 365のテナントからいけるAzure ADにアプリケーションを追加します。追加したら、CliendIDとClientSecret(期限つきのキーのやつ)とTenantID(エンドポイントを表示したときに見れるやつ)をとっておきます。…

ReactiveProperty v2.9.0とv3.0.0-pre5をリリースしました。

id:neueccさんがプルリクをくれました。最近多いですね! www.nuget.org 今回追加された機能は、AsyncReactiveCommandクラスになります。Subscribeメソッドが非同期メソッドを受け取って、その非同期メソッドが実行中の間は自動的にCanExecuteをFalseにして…