Xamarin.Forms 실험적 플래그

새 Xamarin.Forms 기능이 구현될 때 실험적 플래그 뒤에 배치되는 경우가 있습니다. 이를 통해 엔지니어링 팀은 안정적인 릴리스로 이동하기 전에 기능 API를 변경할 수 있는 동시에 새로운 기능을 더 빠르게 제공할 수 있습니다. 그런 다음, 기능이 안정적인 릴리스로 이동하면 실험적 플래그가 제거됩니다.

Xamarin.Forms 에는 다음과 같은 실험적 플래그가 포함됩니다.

  • Shell_UWP_Experimental

실험적 플래그 뒤에 있는 기능을 사용하려면 애플리케이션에서 플래그 또는 플래그를 사용하도록 설정해야 합니다. 실험적 플래그를 사용하도록 설정하는 방법에는 두 가지가 있습니다.

  • 플랫폼 프로젝트에서 실험적 플래그를 사용하도록 설정합니다.
  • 클래스에서 실험적 플래그를 사용하도록 설정합니다 App .

Warning

플래그를 사용하지 않고 실험적 플래그 뒤에 있는 기능을 사용하면 애플리케이션에서 사용하도록 설정해야 하는 플래그를 나타내는 예외가 throw됩니다.

플랫폼 프로젝트에서 플래그 사용

이 메서드를 Xamarin.Forms.Forms.SetFlags 사용하여 플랫폼 프로젝트에서 실험적 플래그를 사용하도록 설정할 수 있습니다.

Xamarin.Forms.Forms.SetFlags("Shell_UWP_Experimental");

이 메서드는 SetFlags iOS의 클래스, MainActivity Android의 클래스 및 UWP의 클래스에서 호출 AppDelegate 되어야 합니다App.

Important

메서드를 호출하기 전에 플랫폼 프로젝트에서 실험적 플래그를 Forms.Init 사용하도록 설정해야 합니다.

이 메서드는 Xamarin.Forms.Forms.SetFlags 배열 인수를 string 허용하므로 단일 메서드 호출에서 여러 실험적 플래그를 사용하도록 설정할 수 있습니다.

Xamarin.Forms.Forms.SetFlags(new string[] { "Shell_UWP_Experimental", "AnotherFeature_Experimental" });

Warning

후속 호출이 이전 호출의 SetFlags 결과를 덮어쓰기 때문에 메서드를 두 번 이상 호출하지 마세요.

앱 클래스에서 플래그 사용

이 메서드를 Device.SetFlags 사용하여 공유 코드 프로젝트의 클래스에서 실험적 플래그를 App 사용하도록 설정할 수 있습니다.

Device.SetFlags(new string[]{ "Shell_UWP_Experimental" });

메서드는 Device.SetFlags 인수를 IReadOnlyList<string> 허용하므로 단일 메서드 호출에서 여러 실험적 플래그를 사용하도록 설정할 수 있습니다.

Device.SetFlags(new string[]{ "Shell_UWP_Experimental", "AnotherFeature_Experimental" });

Warning

후속 호출이 이전 호출의 SetFlags 결과를 덮어쓰기 때문에 메서드를 두 번 이상 호출하지 마세요.

이전 실험적 플래그

다음 표에서는 현재 일반 공급 상태인 기능에 대한 실험적 플래그와 실험적 플래그가 Xamarin.Forms 제거된 릴리스를 나열합니다.

플래그 Xamarin.Forms 릴리스
AppTheme_Experimental 4.8
Brush_Experimental 5.0
CarouselView_Experimental 5.0
CollectionView_Experimental 4.3
DragAndDrop_Experimental 5.0
FastRenderers_Experimental 4.0
IndicatorView_Experimental 4.7
Markup_Experimental 5.0(Xamarin 커뮤니티 도구 키트로 이동)
MediaElement_Experimental 5.0(Xamarin 커뮤니티 도구 키트로 이동)
RadioButton_Experimental 5.0
Shapes_Experimental 5.0
Shell_Experimental 4.0
StateTriggers_Experimental 4.7
SwipeView_Experimental 5.0
Visual_Experimental 3.6