- 1 名前:デフォルトの名無しさん mailto:sage [2022/12/19(月) 19:29:36.93 ID:b7LRFmhz.net]
- Xamarinと.NET MAUIのスレッドです。
C#でクロスプラットフォームのアプリを開発できるフレームワーク 無料、クロスプラットフォーム、オープンソース。 対応プラットフォームは、Windows, Android, iOS, macOS, Linuxなど 前スレ Microsoft .NET MAUI part9 [Xamarin] https://mevius.5ch.net/test/read.cgi/tech/1663067298/
- 565 名前:デフォルトの名無しさん [2025/05/25(日) 02:50:53.12 ID:ciKb89UP.net]
- なんか最近のアップデートを適用したら
実機のAndroid8/10でアプリをデバッガから起動しようとしたら、起動するなり停まってしまう 実機のAndroid13の機種やエミュレーターだと8-15まで全部問題なし 実機でタップして起動するのは問題ないけど、おま環なの?
- 566 名前:デフォルトの名無しさん [2025/05/31(土) 23:10:02.85 ID:C/Qi+mMK.net]
- >>565
AndroidはAndroid 12以降をターゲットにすればいい。 そんな古いバージョンを使っているような会社は切り捨てろ。
- 567 名前:デフォルトの名無しさん [2025/08/10(日) 22:56:12.80 ID:epktwExL.net]
- みんなおらんの?
.net8のプロジェクトを.net9にしたらリリースモードでアプリが起動しなくなったんだけど どうやってデバッグしたら良いの? デバッグモードだとしれっと動くのよ・・・
- 568 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 00:17:16.94 ID:aP3ZTG94.net]
- ライブラリが足りないか、リリース用のDLLをネットから持ってきたため実行権限がないとか。
DLLのプロパティ開いてブロックかかってないか見てみたら?
- 569 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 09:49:08.83 ID:wszRpGrc.net]
- ほんとに起動しないの?起動したけどエラーで落ちてるとかでは?
- 570 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 11:39:50.13 ID:m0YU2zbS.net]
- コマンドプロンプトの画面から呼び出したらエラー内容みえたりしないのかな。
- 571 名前:567 [2025/08/11(月) 13:13:38.32 ID:MNMrhvpr.net]
- copilotさんにログ貼り付けたりして頑張ったら
trim外せって言われて外したら動いた トリム外すだけだとなんかリンカーが通らないから変なオプションも手動で書くように言われて書いたら解決した Trimで何が消えたんだよ・・・・ <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net9.0-android35.0|AnyCPU'"> <PublishTrimmed>false</PublishTrimmed> <=ここがリリースだとデフォルトtrue <RunAOTCompilation>false</RunAOTCompilation> <=copilotさんにかけと言われて書いた </PropertyGroup>
- 572 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 13:26:25.73 ID:p1wBekRk.net]
- 今回の2つの設定変更は、.NET 9 で Release ビルドのデフォルト動作が変わったことによる起動不能問題を回避しています。
--- ① <PublishTrimmed>false</PublishTrimmed> 意味 IL trimming(未使用コード削除) を無効化します。 背景 .NET 9 では Release ビルド時のデフォルトで PublishTrimmed が true になり、リンク時に「使っていない」と判断されたコードを削除します。 問題点 リフレクション(Activator.CreateInstance や JsonSerializer)や動的ロードは、静的解析では使用箇所が見えません。 その結果、必要な型やメソッドが「不要」と誤判断されて削除され、実行時に MissingMethodException TypeLoadException などが発生して、アプリが起動しなくなります。 対応 PublishTrimmed=false により trimming を完全に無効化 → 必要なコードが削除されず起動できるようになります。 ② <RunAOTCompilation>false</RunAOTCompilation> 意味 AOT(Ahead-of-Time コンパイル) を無効化します。 背景 Android の Release ビルドでは、通常 IL を事前にネイティブコードに変換して配布(AOT)が行われます。 .NET 9 では AOT の挙動や組み合わせが変わり、Trim や Linker とセットでより aggressive(厳格)になりました。 問題点 AOT は起動時間短縮やパフォーマンス改善に有効ですが、以下の場合にクラッシュしやすくなります: 動的コード生成(Expression Trees, Reflection.Emit) ジェネリック型のランタイム生成 Trim 済みコードとの依存関係不整合 .NET 9 での変更により、以前は動いていたコードが AOT 後に動かなくなるケースが増えました。 対応 RunAOTCompilation=false で JIT 実行に戻し、AOT に起因するクラッシュを回避します。
- 573 名前:デフォルトの名無しさん mailto:sage [2025/08/11(月) 13:28:02.37 ID:QPpYRl4f.net]
- まとめ
.NET 9 で Release ビルドの最適化が強化 Trim(未使用コード削除)→ 必要なコードが消える AOT(事前ネイティブ化)→ 動的生成や特殊ケースが壊れる 今回の設定はそれらを無効化して「安全寄りのビルド」に戻した メリット: 確実に動く デメリット: APKサイズ増加・起動時間やパフォーマンス低下 本番運用に向けた改善案 Trim 無効化の代わりに DynamicDependency や Preserve 属性で必要な型を明示 TrimmerRootAssembly 設定を活用 AOT 無効化の代わりに 動的コード依存を減らす AOT 対応コードへの置き換え 要するに、この変更は「.NET 9 から Release ビルドの安全マージンが減ったので、自分で安全側に戻した」という状態です。 もしサイズや速度も重視するなら、無効化ではなく「安全に最適化を活かす設定」にしていく必要があります。
- 574 名前:デフォルトの名無しさん mailto:sage [2025/08/12(火) 03:31:50.78 ID:6s6e/dJu.net]
- 互換性ぶっ壊しといて安全です言われてもなあ
- 575 名前:デフォルトの名無しさん mailto:sage [2025/08/12(火) 06:00:21.60 ID:/Wr+0zZA.net]
- 余計なことしかしない
- 576 名前:デフォルトの名無しさん [2025/08/12(火) 11:02:38.38 ID:Hn1Qu25p.net]
- Trimで何を削ったのかさくっとリスト出してくれればいいがそうはならないのよな
- 577 名前:デフォルトの名無しさん mailto:sage [2025/08/12(火) 14:25:07.03 ID:VCS3T4pM.net]
- AOTは実行時例外出しまくったから即オフったわ
あんなもんデフォルトとか正気の沙汰じゃない
- 578 名前:567 [2025/08/12(火) 18:38:28.46 ID:PHJLTY/j.net]
- iOSでも試したけど
MtouchNoSymbolStripをfalseにしないと俺のアプリ起動に失敗しちゃう gccのtrimでこんなダメダメなの聞いたこと無いんだが・・・
- 579 名前:567 [2025/08/12(火) 20:34:12.00 ID:PHJLTY/j.net]
- ダメだった
動いたの古いビルドだった .NET9にすると、iOSなんか、テンプレートのカウントプログラムすら動かなくなるな・・・ なんだこりゃ
- 580 名前:デフォルトの名無しさん mailto:sage [2025/10/20(月) 05:16:43.70 ID:1t0gyqW2.net]
- こりゃ、.net10が楽しみだな
- 581 名前:デフォルトの名無しさん [2025/10/22(水) 12:09:17.18 ID:nOawdUDg.net]
- 結局は誰も触ってないから問題も上がらないってことか
- 582 名前:567 [2025/10/27(月) 23:46:36.71 ID:R4VDCOEB.net]
- .NET10 になったら
.NET9ではAOTをチェックすると起動しなくなる問題が解決するのかな
- 583 名前:デフォルトの名無しさん mailto:sage [2025/11/12(水) 11:15:11.88 ID:s+qzWvl/.net]
- AvaloniaバックエンドでLinux対応…
ネイティブ描画にこだわってた意味は…?
- 584 名前:デフォルトの名無しさん mailto:sage [2025/11/12(水) 14:01:41.32 ID:C17pCTTx.net]
- あいつ前からlinuxで動いてなかったか?
ブラウザコントロールみたいなのはだめだけど
- 585 名前:デフォルトの名無しさん mailto:sage [2025/11/12(水) 17:51:46.56 ID:/tio0wUe.net]
- Avaloniaがflutterのimpellerバックエンドをどうこうとかもみたな
- 586 名前:デフォルトの名無しさん mailto:sage [2025/11/13(木) 03:17:15.00 ID:cz+Tncz0.net]
- うーんMacもAvaloniaベースの方が高速なのか…
もうLinuxだけでなく全プラットフォームAvaloniaに寄生でよくないか? ネイティブにこだわっても低性能バグだらけの実装しかできないんだから
- 587 名前:デフォルトの名無しさん mailto:sage [2025/11/13(木) 08:11:34.27 ID:OXoSwSNf.net]
- バックエンドAvaloniaかよ
- 588 名前:567 [2025/11/13(木) 23:56:44.54 ID:cnLW99Qv.net]
- .NET10はAoTをもっと進めたってドヤ顔で書いてるけど
どうせ迂闊に指定すると起動すらしなくて、自分でどのモジュールをAoTの対象外にするかちまちま調べなきゃいけないんだろ?
- 589 名前:567 [2025/11/15(土) 15:19:05.61 ID:8YaZLliD.net]
- VS2026 iPhoneのホットリロード対応してなかった・・・
- 590 名前:デフォルトの名無しさん mailto:sage [2025/11/16(日) 15:45:34.30 ID:hOoDF7qK.net]
- avaloniaにMAUI被せても余計なレイヤが増えるだけでメリット無いだろ
最初からavaloniaで組めば済む話 迷走っぷりに呆れるわ
- 591 名前:デフォルトの名無しさん [2025/11/19(水) 08:45:20.40 ID:3fOYPujh.net]
- マイウー
- 592 名前:デフォルトの名無しさん mailto:sage [2025/11/19(水) 14:08:14.51 ID:JtciCawm.net]
- MAUIチームは結構な人員削減くらったから妥協案としてAvalonia採用は仕方ないんじゃ無いか
- 593 名前:デフォルトの名無しさん mailto:sage [2025/11/19(水) 15:43:12.54 ID:po3LAMtG.net]
- 元から人少ないイメージしかない
- 594 名前:デフォルトの名無しさん mailto:sage [2025/11/20(木) 02:47:07.19 ID:MdW3ACb6.net]
- 今アクティブなコミッタは4人くらいかな?コード規模に比べて人が少なすぎるよ
MicrosoftはMAUIをどうしたいのかねえ
- 595 名前:デフォルトの名無しさん [2025/11/20(木) 13:29:11.33 ID:ddB92ZGl.net]
- もうさ、Fluent UIの実装を各言語の主要UIフレームワーク向けに提供したほうがいいんじゃないか?
C#は諦めよう
- 596 名前:デフォルトの名無しさん mailto:sage [2025/11/21(金) 00:23:25.64 ID:/Cpdili4.net]
- maui、マジで終わりなの?
Xamarin買収したのは何だったの?
- 597 名前:デフォルトの名無しさん [2025/11/21(金) 01:21:54.44 ID:Qn9mTFMO.net]
- flash でモバイルアプリが作れるようになったときはすげー簡単に作れて感動したのに
adobeはモバイルアプリから撤退 mauiを始めたらマイクロソフトはmauiチームをリストラ・・・ 次はどこに行こう
- 598 名前:デフォルトの名無しさん mailto:sage [2025/11/21(金) 17:46:57.74 ID:YA9gtSxw.net]
- >>597
が来ちゃったからMAUIも同じ運命か…
- 599 名前:デフォルトの名無しさん mailto:sage [2025/11/21(金) 21:26:18.47 ID:Y9/EIU0A.net]
- 人数少ないのに女が混じってるチームもあるからな
女は多様性とかで混じってるだけで能力低いのばっかなのが現実
- 600 名前:デフォルトの名無しさん [2025/11/21(金) 21:33:35.63 ID:Qn9mTFMO.net]
- 女よりやばい
ID:Y9/EIU0A 惨状
- 601 名前:デフォルトの名無しさん mailto:sage [2025/11/21(金) 21:53:57.34 ID:ey5s4TF0.net]
- MAUIとかBlazorとか賑わってるのあるの…
- 602 名前:デフォルトの名無しさん mailto:sage [2025/11/22(土) 02:35:59.03 ID:Z75EPBAl.net]
- >>591
ウマイー
- 603 名前:デフォルトの名無しさん [2025/11/22(土) 13:43:01.62 ID:2aUwFr46.net]
- あれ?角田とハミルトンは?
|

|