2022年12月2日金曜日

Xamarin.Formsから.NET MAUI への移行手順

 

どうも。ひっくです。

今回はXamarin.Formsから.NET MAUI への移行方法を調べてみました。

移行方法


方法としては全て手動で移行するか、一部自動で移行後コンパイルエラー部分を手動で移行するかの

いずれかを選択することになります。

 

どちらの方法でも、以下の4つに対応する必要があります。

  1. プロジェクトを .NET Framework から .NET SDK スタイルに変換する
  2. コードの名前空間を更新する
  3. 互換性のない NuGet パッケージを更新する
  4. API の重大な変更に対処する

 

手動での移行手順の詳細は「Xamarin.Forms (プレビュー) からの移行」を参考ください。

一部自動で移行する場合は、「.NET アップグレード アシスタント」を利用することになります。

 

.NET アップグレード アシスタントを利用する


利用にあたり、現時点(2022/12/02)ではいくつかの制限事項があります。

  • 移行対象プロジェクトがXamarin.Forms 4.8 以降であること
  • Xamarin.Android および Xamarin.iOS のみのソリューションでないこと
  • バインディングまたはライブラリ プロジェクト以外であること

 

上記事項を満たしている場合、移行方法で紹介した「手順1、2」の大部分について

自動での移行が可能になります。

 

利用する場合、以下手順に従ってください。

  1. コマンドプロンプトを起動し、.NET アップグレード アシスタントツールをインストール

    dotnet tool update --global upgrade-assistant
    
  2. アップグレードプロセスを起動する

    upgrade-assistant upgrade <移行対象ソリューション/プロジェクトファイルの絶対パスをここに指定> --non-interactive --entry-point *
    

 

「Upgrade has completed」が表示されたら完了です。

 

現時点では移行方法で紹介した「手順3、4」について自動で移行してくれませんが、

今後こちらにも対応予定とのことなので、対応されればより移行が簡単になると思われます。

 

まとめ


手動で移行する場合それなりに変更点も多いので、可能な限り自動で移行してから手動で

修正していく方が早くなるのではないかと思います。

移行をすぐ行わなくてもよい場合は、.NET アップグレード アシスタントの移行機能が充実してから

対応する、でもよいかもしれません。

 

今回はこのへんで。ではまた!

0 件のコメント:

コメントを投稿