Connect(); 2018 の Xamarin の発表

12月 4日に開催した Microsoft Connect(); 2018 で、Xamarin プラットフォームの新機能、機能拡張などを発表しました。
Visual Studio の開発者は、Visual Studio 2017 や Visual Studio 2017 for Mac で、最新の Xamarin のリリースを入手可能です。
本記事では、Xamarin.Forms 4.0 など Visual Studio 2019 の最初のハンズオン プレビューと紹介します。

クロスプラットフォーム UI

Xamarin.Forms 3.4 がリリースされ、新しい ImageButton コントロール、タブ インデックス アクセスビリティ機能、その他 40 以上の改良が含まれます。よりパワフルな UI コントロールやより簡単なネイティブ、クロスプラットフォーム モバイル アプリのカスタマイズなど、ユーザーからの要望に応え、3.0 以降では、コントリビューターと緊密なコラボレーションをはかり、必要なコントロールや機能の特定、仕様の定義、プルリクエストのレビュー、そしてリリースをしてきました。
NuGet パッケージ マネージャーから入手可能です。

事前プレビュー: Xamarin.Forms 4.0

シェル – より良いモバイルアプリケーションのためのホスト

Xamarin.Forms 4.0 の最初のプレビューで、クロスプラットフォーム モバイル アプリを簡単に立ち上げることができることを実感できます。シェルを用意し、シングル ファイルで対象のアプリケーションの構造体やナビゲーションを表現する非常にシンプルな方法です。複数のページ タイプで、複雑なナビゲーションを処理する必要はありません。ナビゲーションに関して、シェルでは URI powered navigation API を提供し、瞬時にアプリケーションの指定したポイントにジャンプし、データを渡します。シェルの詳細は、 ドキュメント を参照してください。MSDN マガジンの記事もご参考ください。
シェルを使用した紹介として、Tailwind Traders と言う新しいリファレンスのアプリを開発し、GitHub 上で公開しています。

ビジュアルによる一貫した UI

モバイル アプリの外観のデザインについて、iOS と Android で全く同じ外観にするのに、90% 以上の時間を使っていると報告を受けます。このデザインの達成はチャレンジですが、プラットフォーム間でネイティブ UI のデザインに役立つビジュアルを紹介します。ビジュアルはスタイルよりも深く、iOS と Android の両方で同じ外観と動作を提供できる高度なカスタマイズしたレンダリングを提供します。ビジュアルの最初のサポートは、“マテリアル”で、最初のプレビューでは、ボタン、エントリー、フレーム、プログレスバーの実装が含まれます。ContentPage や UI コントロールでビジュアルのプロパティを設定して始めてください。
以下のように、デフォルトのデザインを統一するのにまだ多くの作業があり、Xamarin.Forms 4.0 のプレビュー サイクルを通じて、まだまだ改良が必要です。ビジュアルの詳細は、プレビューのドキュメントを参照してください。

注意: ビジュアルは、Android 9.0、 Android Support 28 最新バージョン、target Android 28 に依存します。

より速いリスト、より多くのレイアウト

ListView を以前に使っていたら、制限を感じたかも知れません。CollectionView の狙いは、より拡張可能なレイアウト オプションを導入することで、ListView の制限を感じなくなるかと思います。パフォーマンスのためにモダンなネイティブ コントロールのサポートや MVVM ドリブンのアプリケーション アーキテクチャーをサポートする API を提供します。デフォルトでは、CollectionView は縦横、グリッドのレイアウトを提供します。また拡張して、独自のカスタム レイアウトをサポートすることもできます。iOS では、パワフルな UICollectionView を使用し、Android では、RecyclerView を使用します。これらの新しいコントロールに加え、非常にフレキシブルな CarouselView には最適です。両方のコントロールは、4.0 のプレビューで利用可能です。プレビューのドキュメントを参照してください。

クロスプラットフォームからプラットフォームサービスへのアクセス

Xamarin.Essentials 1.0 がすべての Xamarin アプリケーションで利用可能になりました。これによって、ジオロケーション、セキュア ストレージ、センサー、デバイス情報など、共有コードから non-UI プラットフォーム API へのアクセスがより簡単になりました。利用可能なクロスプラットフォーム機能のフルリストは、こちらのドキュメントGitHub のリポジトリをご確認ください。

Preview Today

Xamarin.Forms 4.0 のプレビューを始めるために、シェルの実装や Essentials を含む新しいテンプレートの特別なパッケージを用意しました。NuGet パッケージ マネージャーのプレリリース オプションをチェックし、NuGet から直接 Xamarin.Forms 4.0-pre1 をインストールしてください。
Xamarin.Forms 4.0-pre1 Release notes
Download Xamarin.Forms Shell Templates for Visual Studio 2019 Preview on Windows
これらの新しいコントロールを有効にするには、MainActivity.cs と AppDelegate.cs. で Xamarin.Forms を起動する前に、これらのフラグを設定してください。

問題を見つけたり、フィードバックがあれば、GitHub からご連絡ください。

Android のお知らせ

Android ビルドのパフォーマンスと信頼性

Visual Studio 2017 version 15.9 と Visual Studio for Mac 7.7 で、最初のビルドのパフォーマンスとコレクトネスを改善しました。Visual Studio 2019 と Visual Studio for Mac 8.0 で、ビルドや配布に掛かる時間を削減できるように改良を続けています。また Andoird の次世代パッケージング ツールのサポートを提供します。本機能を有効にするには、対象のプロジェクトの .csproj に MSBuild のフラグを使いします:

  • aapt2 – Android のパッケージングをコンパイルとリンクの二つのステップに分けます。これによって、ビルドのパフォーマンスを改良し、より迅速なエラー レポートを提供します。たとえば、シングル ファイルに変更がある場合、そのファイルのみ再コンパイルすればよいです。
    <AndroidUseAapt2>True</AndroidUseAapt2>

対象のプロジェクトでこのツールを有効にすることで、ビルド時と起動の両方でパフォーマンスの向上がはかれます。

Android Support Library v28

Xamarin の Android Support Library version 28 以降、対象のアプリケーションの TargetFrameworkVersion が期待するバージョンよりも古い場合、古いサポートするライブラリーのバージョン用のアッセンブリーを含む multi-targeting を導入しました。

これによって、TargetFrameworkVersion に関係なく、対象のプロジェクトに Android Support Library をインストールでき、対象のアプリケーション用にサポートする最新の Android Support Library のバージョンを使用できます。

Visual Studio Tools for Xamarin

モバイル開発者にとってより安定性と生産性をもたらすように Xamarin のミッションは続きます。Windows と Mac で Visual Studio 2019 のプレビューが利用可能です。本リリースでは、安定した開発環境を維持しながら、プレビューをより良く評価できるように、並べて Visual Studio for Mac を起動できるようになりました。詳細は、ドキュメントを参照してください。
Visual Studio 2019 では、多くの改良が含まれるますが、ここでは、AI 支援付き XAML IntelliSense for Xamarin.Forms、Xamarin.Forms 用の新しいプロパティ パネル、生産性を向上するデザイナーの更新など、主な新機能の特長を紹介します。

AI 支援付き XAML IntelliSense

まず AI-assisted IntelliSense for Xamarin.Forms XAML with IntelliCode を紹介します。IntelliCode は、コンテキストをベースとしたコンパイル リストの上位によく使うアイテムを推奨することで、IntelliSense のエクスペリエンスを拡張します。Contextual の推奨は、多くのオープンソース コードのレポジトリの一般的な開発のプラクティスをベースとしています。コーディング コンテキストをベースとしたリストで、最も可能性の高いメンバーを予測することで、AI 支援付き IntelliSense は自分でリストを検索する必要がなくなります。

IntelliCode for Xamarin.Forms XAML は、Visual Studio 2017 Version 15.7 およびそれ以降、Visual Studio 2019 Preview 1 をサポートする Visual Studio の IntelliCode Extension をダウンロードすることで利用できます。

Xamarin.Forms プロパティ パネル

Visual Studio 2019 for Windows のプロパティ パネルを使用して、Xamarin.Forms XAML のコントロールのプロパティを編集できます。プロパティ パネルは、デフォルトでは、Visual Studio の右下に表示され、[表示] メニューから [プロパティウィンドウ] を選択するか、F4 キーを押して開くことができます。XAML ファイルを編集中に、プロパティ パネルで編集しているコントロールの一般的なプロパティを見ることができます。さまざまなプロパティの値を編集し、変更内容を XAML エディタに即座に反映できます。プロプロパティ パネルパティ パネルは、Xamarin.Forms コントロールで使用できるプロパティを確認し、UI を素早く編集できる優れたツールです。

 Xamarin Android デザイナーの機能拡張

Split View のインターアクションに生産性を高める拡張を行いました。
まず、ツールボックスからソース エディターへ直接ドロップアンドドロップができ、Android のデザインを素早くできます。

次に、ソース エディタで XML の定義スパンから要素を直接選択できます。キャレットの位置を対応する Android ビューと同期させることで、これを行い、エディタから直接プロパティ パネルの要素のプロパティに簡単にアクセスができます。

最後に、XML コードにインライン カラー プレビューを追加して、コントロールでどの色を使用しているかを確認できます。

定義されている場所やカラーの 16進数の値などのリソースに関する詳細は、値の上にカーソルを置くことで、クイックインフォメーション機能を使用することができます。

Xamarin iOS デザイナーの機能拡張

Visual Studio 2019 Preview 1 では、iOS デザイナーに、以下のサポートを含む多くの改良と新機能が含まれます:

  • イメージ ソースとして、PDF アセットを使用
  • カラー スペースとカラー精度を向上
  • アセット カタログから名前付きカラーを選択

Android エミュレータの改善

Visual Studio 2019 では、新しい Android エミュレータ イメージを簡単に作成できるようになり、アプリをデバッグできます。ユーザーは、実行アイコンを押すだけで、最初のイメージを作成できます。エミュレータの取得エクスペリエンスは、セットアップに最適な構成を自動的に決定し、ハードウェア アクセラレーション (Intel HAXM または Hyper-V 使用) とデフォルトでクイックブートを利用します。

後で別のイメージを作成する場合は、ドロップダウンから Create Android Emulator を選択して Android Device Manager を開きます。Windows 10 October Update の Windows チームと引き続き協力して、Hyper-V で起動時の Android エミュレーターのパフォーマンスを向上させます。

より小さなワークロードサイズ

Visual Studio 2019 では、Xamarin ワークロードのサイズを 50% 削減しました。モバイル アプリのビルドをより早く始めたいとのご要望を受けています。従来、この問題を回避する重要な問題は、Visual Studio 2017 の Xamarin ワークロードのサイズ (またはダウンロード時間) でした。今回のリリースでは、Xamarin ワークロードはわずか 7.69GB で、Visual Studio 2017 version 15.9 より 2倍の、vesion 15.7 より 3倍の改善を図ることができました。

これは始まりにすぎません!

開発チームでは、Visual Studio と Xamarin の次期メジャーバージョンが登場する中、改善点に力を注ぎ、引き続き開発に励んでいます。 今すぐダウンロードして、あなたの経験についてお聞かせください。

Xamarin.Forms サンプル



記事参照:
© 2018 Xamarin Inc.

2018 年 12 月 4 日
Connect(); 2018 Xamarin Announcements

シェアする

  • このエントリーをはてなブックマークに追加

フォローする