SlideShare a Scribd company logo
Web開発者が始める.NET
MAUI Blazor App
株式会社SAKURUG
エンジニアリングユニット
草場 友光
.NET ラボ 2022年6月
自己紹介
• 普段は主にWebFormsアプリ
の保守のお仕事をしてます。
• 古めのシステムが多いので時
代に取り残されぬよう新しい技
術を一つでも入れるよう日々努
力しています。
• tomo_kusaba
宣伝
【VISION】ひとの可能性を開花させる企業であり続ける
VISIONに共感できる仲間募集中。
注意
• 個人の見解・解釈が多分に入っています。
• 見解の相違・事実誤認などありましたらご指摘ください。
• #dotnetlabでtweetすると右側に表示されます
今日の目的
• .NET MAUIがとうとうGAしました。
• .NET MAUI Blazor Appはその中でもBlazor技術を使い
Android、iOS向けのモバイル開発ができるフレームワークで
す
• Web開発者視点でどれだけ違和感なくモバイル開発に入ってい
けるかを紹介していきます。
本日やってることは。。。
• Blazor WebAssemblyで実装してWebページとして公開しても
変わらないとかいう突っ込みはなしで!
• きっと、それぞれのプラットフォームでのネイティブアプリ
ケーションになるというところに価値があるのです。
.NET MAUIとは
ネイティブのモバイルアプリやデスクトップアプリを作成するためのクラスプラットフォー
ムフレームワーク
.NET MAUI Blazor Appとは?
• Android、iOS、macOS、Windowsにデプロイできる
• Razorコンポーネントを使用可能
• Blazor WebAssemblyと同じ感覚でアプリケーション開発可能
• あくまでUIを構築する手段としてのBlazor
• .NET MAUIの提供するGPSや加速度APIなどのネイティブAPI
へのアクセスを含むさまざまなAPIが使用可能
.NET MAUI Blazor Appのしくみ
BlazorWebVeiwコントロール
Blazorコード
プロジェクト構成
Platforms・Resourcesという見慣れ
ないフォルダ
他にも、MainPage.xamlや
Program.csではなく
MauiProgram.csがエントリーポイ
ントになっている
基本的には、Blazor WebAssembly
のプロジェクト構造に似てる!
前提条件
• Visual Studio2022 Previewおよび.NET Multi-Platform App
UI開発ワークロードをインストール
• Microsoft Edge WebView2
• Android Emulatorのパフォーマンス向上のためHyper-Vおよ
びHAXM(Intel CPU)の有効化
プロジェクトを作ろう
• .NET MAUI Blazorアプリのテンプレートを選択
Windowsで動かしてみた
Androidエミュレータで動かしてみた
もちろん、ホットリロードもできる!
• Androidエミュレータに対してホットリロード
WebAPIをコールしてみた
• 通常通りの実装でWebAPIを呼べる
• だって、C#なんだもん
Razorコンポーネント
• WebAPIからの情報を表示す
るだけならBlazor
WebAssemblyと全く同じ
• これで、モバイル向けネイ
ティブアプリケーションがで
きるのはすごい
UIコンポーネントを入れてみた
• Blazorで画面をつくるためにHTML使いたくないよぉ!
• 個人的に使いなれた「Radzon」を入れてみる
Radzen導入方法
• 「Radzen.Blazor」をNuget
Radzen導入方法
• 「_Imports.razor」に@using Radzenと@using
Radzen.Blazorの2行を追加
Radzen導入方法
• 「wwwroot/index.html」にcssとjsを追加
Radzenを使う
• Radzenのタグが使えることを確認しよう
デバイス情報の読み取り
• DeviceInfoで読み取りができる。
• 詳しくはDocs参照
デバイスセンサーへのアクセス
• 例えば加速度センサーDocsのサンプル
日本語訳が微妙すぎてこの引数がよ
くわからん
次のコード例は、加速度計の変更を監視する方法を示しています。 イン
スタンスは Accelerometer.Default メソッドに
ToggleAccelerometer 渡されます。
??
次のコード例は、加速度計の変更を監視する方法を示しています。 イン
スタンスは ToggleAccelerometerメソッドに
Accelerometer.Default が渡されます。
Android実機で動かしてみたその1
• 物理デバイスでデバッグする方法
ビルド番号を7回タップ→
開発者向けオプションメ
ニューが出る
Android実機で動かしてみたその1
Android実機で動かしてみたその1
Android実機で動かしてみたその2
• 署名なしでビルド→apkを作る
• テスト用途ですので公開用には署名してビルドしてください
Android実機で動かしてみたその2
Android実機で動かしてみたその2
参考文献
• Radzen Blazor Componets Get Started
• Android用の .NET MAUI アプリを発行する
• BlazorWebView を使用して .NET MAUI アプリで Blazor
Web アプリをホストする
• .NET MAUIBlazor アプリを構築する
おしまい
おしまい

More Related Content

What's hot (20)

PDF
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
 
PPTX
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
 
PDF
「自分のとこでは動くけど…」を無くす devcontainer
Yuta Matsumura
 
PDF
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
 
PDF
Web開発者にお勧め .NET MAUI Blazor App
TomomitsuKusaba
 
PDF
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
Yoshiki Hayama
 
PDF
シリコンバレーの「何が」凄いのか
Atsushi Nakada
 
PDF
Docker Compose 徹底解説
Masahito Zembutsu
 
PDF
組織の問題も解決するアーキテクチャ BackendsForFrontends
PIXTA Inc.
 
PDF
強いて言えば「集約どう実装するのかな、を考える」な話
Yoshitaka Kawashima
 
PDF
Akkaとは。アクターモデル とは。
Kenjiro Kubota
 
PDF
Infrastructure as Code (IaC) 談義 2022
Amazon Web Services Japan
 
PPTX
イベント駆動プログラミングとI/O多重化
Gosuke Miyashita
 
PDF
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
 
PDF
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
 
PDF
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
 
PPTX
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
NTT DATA Technology & Innovation
 
PDF
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Akira Inoue
 
PPTX
Dockerからcontainerdへの移行
Akihiro Suda
 
PDF
デバイスの運用で使える AWS IoTサービスの紹介
Amazon Web Services Japan
 
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
 
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
 
「自分のとこでは動くけど…」を無くす devcontainer
Yuta Matsumura
 
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
 
Web開発者にお勧め .NET MAUI Blazor App
TomomitsuKusaba
 
45分間で「ユーザー中心のものづくり」ができるまで詰め込む
Yoshiki Hayama
 
シリコンバレーの「何が」凄いのか
Atsushi Nakada
 
Docker Compose 徹底解説
Masahito Zembutsu
 
組織の問題も解決するアーキテクチャ BackendsForFrontends
PIXTA Inc.
 
強いて言えば「集約どう実装するのかな、を考える」な話
Yoshitaka Kawashima
 
Akkaとは。アクターモデル とは。
Kenjiro Kubota
 
Infrastructure as Code (IaC) 談義 2022
Amazon Web Services Japan
 
イベント駆動プログラミングとI/O多重化
Gosuke Miyashita
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
 
Dockerfile を書くためのベストプラクティス解説編
Masahito Zembutsu
 
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
NTT DATA Technology & Innovation
 
.NET の過去、現在、そして未来 ~ .NET 最新アップデート
Akira Inoue
 
Dockerからcontainerdへの移行
Akihiro Suda
 
デバイスの運用で使える AWS IoTサービスの紹介
Amazon Web Services Japan
 

Similar to Web開発者が始める .NET MAUI Blazor App (20)

PDF
2022.04.23 .NET 6 -7 時代のデスクトップ アプリケーション開発
Fujio Kojima
 
PPTX
7 つの Blazor
m ishizaki
 
PDF
NET MAUI for .NET 7 for iOS, Android app development
Shotaro Suzuki
 
PPTX
モノづくりBlazor勉強会1回目資料_Blazorについて.pptx
tkeproject
 
PDF
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
Akira Inoue
 
PDF
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
PPTX
Blazor でアプリを作ろう! ~テンプレートインストールから最初のデバッグ実行まで~
m ishizaki
 
PDF
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
PDF
.NET 6 時代のデスクトップ アプリケーション開発
Fujio Kojima
 
PDF
Blazor 触ってみた
Oda Shinsuke
 
PDF
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
PDF
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
PDF
C# で SPA を作る BLAZOR WEBASSEMBLY の進化 - そしてその先へ
Jun-ichi Sakamoto
 
PPTX
burikaigi2025.pptx Burikaigi2025でつかった資料です。
Tatsuya Ishikawa
 
PDF
C# で Single Page Web アプリを 開発できる Blazor ― その魅力
Jun-ichi Sakamoto
 
PPTX
.NET Core 3.0 で Blazor を使用した​フルスタック C# Web アプリ​の構築
Joni
 
PDF
New Features of DotNet 6 Blazor WASM
Shotaro Suzuki
 
PDF
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
Tatsuya Ishikawa
 
PDF
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
Akira Inoue
 
PPTX
Xamarin で良くやっていたあれを MAUI でする話
m ishizaki
 
2022.04.23 .NET 6 -7 時代のデスクトップ アプリケーション開発
Fujio Kojima
 
7 つの Blazor
m ishizaki
 
NET MAUI for .NET 7 for iOS, Android app development
Shotaro Suzuki
 
モノづくりBlazor勉強会1回目資料_Blazorについて.pptx
tkeproject
 
.NET 6 と Blazor で作るクロスプラットフォームアプリ概要
Akira Inoue
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
Blazor でアプリを作ろう! ~テンプレートインストールから最初のデバッグ実行まで~
m ishizaki
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
.NET 6 時代のデスクトップ アプリケーション開発
Fujio Kojima
 
Blazor 触ってみた
Oda Shinsuke
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
Application development with c#, .net 6, blazor web assembly, asp.net web api...
Shotaro Suzuki
 
C# で SPA を作る BLAZOR WEBASSEMBLY の進化 - そしてその先へ
Jun-ichi Sakamoto
 
burikaigi2025.pptx Burikaigi2025でつかった資料です。
Tatsuya Ishikawa
 
C# で Single Page Web アプリを 開発できる Blazor ― その魅力
Jun-ichi Sakamoto
 
.NET Core 3.0 で Blazor を使用した​フルスタック C# Web アプリ​の構築
Joni
 
New Features of DotNet 6 Blazor WASM
Shotaro Suzuki
 
2024/07/04 Blazor+ローコードで実現する.NET資産のモダナイズ
Tatsuya Ishikawa
 
デモで楽しむ Visual Studio 2022 & .NET 6 最新アップデート
Akira Inoue
 
Xamarin で良くやっていたあれを MAUI でする話
m ishizaki
 
Ad

More from TomomitsuKusaba (17)

PDF
.NET 7におけるBlazorの新機能
TomomitsuKusaba
 
PDF
ASP. NET Core 汎用ホスト概要
TomomitsuKusaba
 
PDF
Microsoft MVPとは?コミュニティ活動のすすめ
TomomitsuKusaba
 
PDF
.NET 7期待の新機能
TomomitsuKusaba
 
PDF
NET 6で実装された新しいLINQ API
TomomitsuKusaba
 
PDF
.NET6新機能の振り返り
TomomitsuKusaba
 
PDF
BlazorにSwaggerを導入してみよう
TomomitsuKusaba
 
PDF
MuseLoid規格の音源自作について
TomomitsuKusaba
 
PDF
Entity Framework(Core)についての概要を学ぼう
TomomitsuKusaba
 
PDF
.NET Lab2022年2月
TomomitsuKusaba
 
PDF
保守性の高いアプリケーション設計について
TomomitsuKusaba
 
PDF
リモートワークで買ってよかったもの
TomomitsuKusaba
 
PDF
Static Web AppsとBlazor WebAssemblyのすすめ
TomomitsuKusaba
 
PDF
.NET 6の期待の新機能とアップデート
TomomitsuKusaba
 
PPTX
.NETラボ2021年10月 .NETの過去と現在
TomomitsuKusaba
 
PPTX
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
TomomitsuKusaba
 
PPTX
.Netlab202107
TomomitsuKusaba
 
.NET 7におけるBlazorの新機能
TomomitsuKusaba
 
ASP. NET Core 汎用ホスト概要
TomomitsuKusaba
 
Microsoft MVPとは?コミュニティ活動のすすめ
TomomitsuKusaba
 
.NET 7期待の新機能
TomomitsuKusaba
 
NET 6で実装された新しいLINQ API
TomomitsuKusaba
 
.NET6新機能の振り返り
TomomitsuKusaba
 
BlazorにSwaggerを導入してみよう
TomomitsuKusaba
 
MuseLoid規格の音源自作について
TomomitsuKusaba
 
Entity Framework(Core)についての概要を学ぼう
TomomitsuKusaba
 
.NET Lab2022年2月
TomomitsuKusaba
 
保守性の高いアプリケーション設計について
TomomitsuKusaba
 
リモートワークで買ってよかったもの
TomomitsuKusaba
 
Static Web AppsとBlazor WebAssemblyのすすめ
TomomitsuKusaba
 
.NET 6の期待の新機能とアップデート
TomomitsuKusaba
 
.NETラボ2021年10月 .NETの過去と現在
TomomitsuKusaba
 
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
TomomitsuKusaba
 
.Netlab202107
TomomitsuKusaba
 
Ad

Web開発者が始める .NET MAUI Blazor App