Submit Search
Upload
Web開発者が始める .NET MAUI Blazor App
•
0 likes
•
1,071 views
T
TomomitsuKusaba
Follow
.NETラボ2022年6月 Web開発者が始める .NET MAUI Blazor App
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 32
Download now
Download to read offline
Recommended
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
ドメイン駆動設計入門
ドメイン駆動設計入門
Takuya Kitamura
MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~
torisoup
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
増田 亨
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
Recommended
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
ドメイン駆動設計入門
ドメイン駆動設計入門
Takuya Kitamura
MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~
torisoup
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
ソフトウェア開発のやり方の改善
ソフトウェア開発のやり方の改善
増田 亨
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
ASP.NETの進化とASP.NET Core Blazorの凄さ
ASP.NETの進化とASP.NET Core Blazorの凄さ
Sho Okada
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver
Masahito Zembutsu
Istioサービスメッシュ入門
Istioサービスメッシュ入門
Yoichi Kawasaki
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
SEGADevTech
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
TomomitsuKusaba
プログラマが欲しい仕様書とは
プログラマが欲しい仕様書とは
Katsutoshi Makino
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
Web開発者にお勧め .NET MAUI Blazor App
Web開発者にお勧め .NET MAUI Blazor App
TomomitsuKusaba
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
モノビット エンジン
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
脱 Excel設計書
脱 Excel設計書
rai
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
sairoutine
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
Takuya Ueda
アジャイル開発の中の設計
アジャイル開発の中の設計
Takuya Okamoto
比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)
gree_tech
保守性の高いアプリケーション設計について
保守性の高いアプリケーション設計について
TomomitsuKusaba
.NET 7期待の新機能
.NET 7期待の新機能
TomomitsuKusaba
More Related Content
What's hot
ASP.NETの進化とASP.NET Core Blazorの凄さ
ASP.NETの進化とASP.NET Core Blazorの凄さ
Sho Okada
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver
Masahito Zembutsu
Istioサービスメッシュ入門
Istioサービスメッシュ入門
Yoichi Kawasaki
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
SEGADevTech
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
TomomitsuKusaba
プログラマが欲しい仕様書とは
プログラマが欲しい仕様書とは
Katsutoshi Makino
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
Web開発者にお勧め .NET MAUI Blazor App
Web開発者にお勧め .NET MAUI Blazor App
TomomitsuKusaba
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
増田 亨
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
モノビット エンジン
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
モノビット エンジン
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
脱 Excel設計書
脱 Excel設計書
rai
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
sairoutine
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
Takuya Ueda
アジャイル開発の中の設計
アジャイル開発の中の設計
Takuya Okamoto
比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)
gree_tech
What's hot
(20)
ASP.NETの進化とASP.NET Core Blazorの凄さ
ASP.NETの進化とASP.NET Core Blazorの凄さ
忙しい人の5分で分かるDocker 2017年春Ver
忙しい人の5分で分かるDocker 2017年春Ver
Istioサービスメッシュ入門
Istioサービスメッシュ入門
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
「龍が如くスタジオ」のQAエンジニアリング技術を結集した全自動バグ取りシステム
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
.NETラボ2021年9月 Blazorのカスタム認証を通じてDIの便利さを学ぶ
プログラマが欲しい仕様書とは
プログラマが欲しい仕様書とは
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
Web開発者にお勧め .NET MAUI Blazor App
Web開発者にお勧め .NET MAUI Blazor App
正しいものを正しく作る塾-設計コース
正しいものを正しく作る塾-設計コース
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
Unityネットワーク通信の基盤である「RPC」について、意外と知られていないボトルネックと、その対策法
ネットワーク ゲームにおけるTCPとUDPの使い分け
ネットワーク ゲームにおけるTCPとUDPの使い分け
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
脱 Excel設計書
脱 Excel設計書
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
CEDEC2019 大規模モバイルゲーム運用におけるマスタデータ管理事例
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
アジャイル開発の中の設計
アジャイル開発の中の設計
比較サイトの検索改善(SPA から SSR に変換)
比較サイトの検索改善(SPA から SSR に変換)
Similar to Web開発者が始める .NET MAUI Blazor App
保守性の高いアプリケーション設計について
保守性の高いアプリケーション設計について
TomomitsuKusaba
.NET 7期待の新機能
.NET 7期待の新機能
TomomitsuKusaba
BlazorにSwaggerを導入してみよう
BlazorにSwaggerを導入してみよう
TomomitsuKusaba
.NET Lab2022年2月
.NET Lab2022年2月
TomomitsuKusaba
Static Web AppsとBlazor WebAssemblyのすすめ
Static Web AppsとBlazor WebAssemblyのすすめ
TomomitsuKusaba
.NET 7におけるBlazorの新機能
.NET 7におけるBlazorの新機能
TomomitsuKusaba
.NET6新機能の振り返り
.NET6新機能の振り返り
TomomitsuKusaba
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
Masaru Gushiken
COD2013 Windows Azure Mobile Service を用いたiOS/Android開発
COD2013 Windows Azure Mobile Service を用いたiOS/Android開発
Masaki Yamamoto
マルチデバイスに対応するためのAuto layout
マルチデバイスに対応するためのAuto layout
asakahara
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
Yoichiro Sakurai
モバイルWebアプリケーションを複数端末で動かすために注意すること
モバイルWebアプリケーションを複数端末で動かすために注意すること
dsuke Takaoka
これからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れ
Mitsuru Katoh
これからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
Mitsuru Katoh
Microsoft MVPとは?コミュニティ活動のすすめ
Microsoft MVPとは?コミュニティ活動のすすめ
TomomitsuKusaba
UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選
Yuki Okada
Project 15 - Algyan May 2022.pdf
Project 15 - Algyan May 2022.pdf
YasuhiroHanda2
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
Akira Hatsune
Visual Studio 2019 / Visual Studio Code + Live Shareではじめるモブ・プログラミング #vs2019
Visual Studio 2019 / Visual Studio Code + Live Shareではじめるモブ・プログラミング #vs2019
満徳 関
第2回ビジネスモバイル研究会
第2回ビジネスモバイル研究会
Shuichi Yukimoto
Similar to Web開発者が始める .NET MAUI Blazor App
(20)
保守性の高いアプリケーション設計について
保守性の高いアプリケーション設計について
.NET 7期待の新機能
.NET 7期待の新機能
BlazorにSwaggerを導入してみよう
BlazorにSwaggerを導入してみよう
.NET Lab2022年2月
.NET Lab2022年2月
Static Web AppsとBlazor WebAssemblyのすすめ
Static Web AppsとBlazor WebAssemblyのすすめ
.NET 7におけるBlazorの新機能
.NET 7におけるBlazorの新機能
.NET6新機能の振り返り
.NET6新機能の振り返り
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
COD2013 Windows Azure Mobile Service を用いたiOS/Android開発
COD2013 Windows Azure Mobile Service を用いたiOS/Android開発
マルチデバイスに対応するためのAuto layout
マルチデバイスに対応するためのAuto layout
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
モバイルWebアプリケーションを複数端末で動かすために注意すること
モバイルWebアプリケーションを複数端末で動かすために注意すること
これからのNotesモバイルアプリはこう作れ
これからのNotesモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
これからのNOTESモバイルアプリはこう作れ
Microsoft MVPとは?コミュニティ活動のすすめ
Microsoft MVPとは?コミュニティ活動のすすめ
UXを損ねる静的コンテンツ配信アンチパターン7選
UXを損ねる静的コンテンツ配信アンチパターン7選
Project 15 - Algyan May 2022.pdf
Project 15 - Algyan May 2022.pdf
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
ネイティブアプリ開発を加速する、モダンバックエンドとのタイアップ手法
Visual Studio 2019 / Visual Studio Code + Live Shareではじめるモブ・プログラミング #vs2019
Visual Studio 2019 / Visual Studio Code + Live Shareではじめるモブ・プログラミング #vs2019
第2回ビジネスモバイル研究会
第2回ビジネスモバイル研究会
More from TomomitsuKusaba
ASP. NET Core 汎用ホスト概要
ASP. NET Core 汎用ホスト概要
TomomitsuKusaba
NET 6で実装された新しいLINQ API
NET 6で実装された新しいLINQ API
TomomitsuKusaba
MuseLoid規格の音源自作について
MuseLoid規格の音源自作について
TomomitsuKusaba
Entity Framework(Core)についての概要を学ぼう
Entity Framework(Core)についての概要を学ぼう
TomomitsuKusaba
リモートワークで買ってよかったもの
リモートワークで買ってよかったもの
TomomitsuKusaba
.NET 6の期待の新機能とアップデート
.NET 6の期待の新機能とアップデート
TomomitsuKusaba
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在
TomomitsuKusaba
.Netlab202107
.Netlab202107
TomomitsuKusaba
More from TomomitsuKusaba
(8)
ASP. NET Core 汎用ホスト概要
ASP. NET Core 汎用ホスト概要
NET 6で実装された新しいLINQ API
NET 6で実装された新しいLINQ API
MuseLoid規格の音源自作について
MuseLoid規格の音源自作について
Entity Framework(Core)についての概要を学ぼう
Entity Framework(Core)についての概要を学ぼう
リモートワークで買ってよかったもの
リモートワークで買ってよかったもの
.NET 6の期待の新機能とアップデート
.NET 6の期待の新機能とアップデート
.NETラボ2021年10月 .NETの過去と現在
.NETラボ2021年10月 .NETの過去と現在
.Netlab202107
.Netlab202107
Web開発者が始める .NET MAUI Blazor App
1.
Web開発者が始める.NET MAUI Blazor App 株式会社SAKURUG エンジニアリングユニット 草場
友光 .NET ラボ 2022年6月
2.
自己紹介 • 普段は主にWebFormsアプリ の保守のお仕事をしてます。 • 古めのシステムが多いので時 代に取り残されぬよう新しい技 術を一つでも入れるよう日々努 力しています。 •
tomo_kusaba
3.
宣伝 【VISION】ひとの可能性を開花させる企業であり続ける VISIONに共感できる仲間募集中。
4.
注意 • 個人の見解・解釈が多分に入っています。 • 見解の相違・事実誤認などありましたらご指摘ください。 •
#dotnetlabでtweetすると右側に表示されます
5.
今日の目的 • .NET MAUIがとうとうGAしました。 •
.NET MAUI Blazor Appはその中でもBlazor技術を使い Android、iOS向けのモバイル開発ができるフレームワークで す • Web開発者視点でどれだけ違和感なくモバイル開発に入ってい けるかを紹介していきます。
6.
本日やってることは。。。 • Blazor WebAssemblyで実装してWebページとして公開しても 変わらないとかいう突っ込みはなしで! •
きっと、それぞれのプラットフォームでのネイティブアプリ ケーションになるというところに価値があるのです。
7.
.NET MAUIとは ネイティブのモバイルアプリやデスクトップアプリを作成するためのクラスプラットフォー ムフレームワーク
8.
.NET MAUI Blazor
Appとは? • Android、iOS、macOS、Windowsにデプロイできる • Razorコンポーネントを使用可能 • Blazor WebAssemblyと同じ感覚でアプリケーション開発可能 • あくまでUIを構築する手段としてのBlazor • .NET MAUIの提供するGPSや加速度APIなどのネイティブAPI へのアクセスを含むさまざまなAPIが使用可能
9.
.NET MAUI Blazor
Appのしくみ BlazorWebVeiwコントロール Blazorコード
10.
プロジェクト構成 Platforms・Resourcesという見慣れ ないフォルダ 他にも、MainPage.xamlや Program.csではなく MauiProgram.csがエントリーポイ ントになっている 基本的には、Blazor WebAssembly のプロジェクト構造に似てる!
11.
前提条件 • Visual Studio2022
Previewおよび.NET Multi-Platform App UI開発ワークロードをインストール • Microsoft Edge WebView2 • Android Emulatorのパフォーマンス向上のためHyper-Vおよ びHAXM(Intel CPU)の有効化
12.
プロジェクトを作ろう • .NET MAUI
Blazorアプリのテンプレートを選択
13.
Windowsで動かしてみた
14.
Androidエミュレータで動かしてみた
15.
もちろん、ホットリロードもできる! • Androidエミュレータに対してホットリロード
16.
WebAPIをコールしてみた • 通常通りの実装でWebAPIを呼べる • だって、C#なんだもん
17.
Razorコンポーネント • WebAPIからの情報を表示す るだけならBlazor WebAssemblyと全く同じ • これで、モバイル向けネイ ティブアプリケーションがで きるのはすごい
18.
UIコンポーネントを入れてみた • Blazorで画面をつくるためにHTML使いたくないよぉ! • 個人的に使いなれた「Radzon」を入れてみる
19.
Radzen導入方法 • 「Radzen.Blazor」をNuget
20.
Radzen導入方法 • 「_Imports.razor」に@using Radzenと@using Radzen.Blazorの2行を追加
21.
Radzen導入方法 • 「wwwroot/index.html」にcssとjsを追加
22.
Radzenを使う • Radzenのタグが使えることを確認しよう
23.
デバイス情報の読み取り • DeviceInfoで読み取りができる。 • 詳しくはDocs参照
24.
デバイスセンサーへのアクセス • 例えば加速度センサーDocsのサンプル 日本語訳が微妙すぎてこの引数がよ くわからん 次のコード例は、加速度計の変更を監視する方法を示しています。 イン スタンスは
Accelerometer.Default メソッドに ToggleAccelerometer 渡されます。 ?? 次のコード例は、加速度計の変更を監視する方法を示しています。 イン スタンスは ToggleAccelerometerメソッドに Accelerometer.Default が渡されます。
25.
Android実機で動かしてみたその1 • 物理デバイスでデバッグする方法 ビルド番号を7回タップ→ 開発者向けオプションメ ニューが出る
26.
Android実機で動かしてみたその1
27.
Android実機で動かしてみたその1
28.
Android実機で動かしてみたその2 • 署名なしでビルド→apkを作る • テスト用途ですので公開用には署名してビルドしてください
29.
Android実機で動かしてみたその2
30.
Android実機で動かしてみたその2
31.
参考文献 • Radzen Blazor
Componets Get Started • Android用の .NET MAUI アプリを発行する • BlazorWebView を使用して .NET MAUI アプリで Blazor Web アプリをホストする • .NET MAUIBlazor アプリを構築する
32.
おしまい おしまい
Download now