퓨즈[Fusetools] 버전 1.1.0의 새로운 기능

퓨즈를 업그레이드 한 후에는 ‘uno clean’을 실행하는걸 잊지 마세요.

하이라이트

  • 다양한 새로운 UX 표현 함수 – 우리 모두가 오랫동안 원했던 ‘Each-index’를 포함합니다!
  • UX 컴파일러의 컴파일 시간이 줄어들고 퓨즈 미리보기에서 편집 속도가 향상되었습니다. 실시간 미리보기가 더 ‘실시간’으로 제공됩니다.
  • 퓨즈에서 빌드 플래그를 제어합니다. (커맨드 라인을 거치지 않고)
  • 이제 iOS에서 HLS 비디오 스트림을 사용할 수 있습니다.
  • 드디어 이전 Mac 모델에서 Freetype- / SIGILL 관련 충돌을 제거했습니다. (감사합니다 올리! 가족과 함께 시간을 보내십시오!)
  • 더 쉽게 거주지를 포킹할 수 있도록 MapMarker.Tapped가 추가되었습니다.

그밖의 많은 수정 사항 및 기능들.

툴링

빌드 플래그 대화 상자

  • 퓨즈에서 빌드 플래그(예: -DDEBUG_V8)를 추가하기 위한 새로운 대화 상자가 추가되었습니다. 미리보기 메뉴에서 찾을 수 있습니다.

파일보기

  • 퓨즈가 가끔 프로젝트의 파일이 생성되었지만 이를 통지하지 못하는 버그가 수정되었습니다.

업데이트 알림

  • 업데이트 알림에 변경 로그가 표시되지 않는 버그가 수정되었습니다.

인스펙터 (퓨즈 스튜디오)

  • 텍스트 컨트롤의 TextTruncation 설정이 MaxLength를 구성하는 옵션으로 바뀌었습니다.
  • macOS에서 선택한 특정 편집기의 값이 이전에 선택된 요소의 값을 사용하는 버그가 수정되었습니다.

Fuselibs

Fuse.ImageTools

  • ImageTools.resize를 사용하면 Android에서 KEEP_ASPECT가 더 이상 무시되지 않습니다.
  • 조기에 재활용된 비트맵으로 인해 예외가 발생할 수 있는 Android 구현의 버그 수정
  • Windows 및 Mac OS X를 포함하여 DotNet 플랫폼의 base64로 이미지 인코딩/디코딩을 지원합니다.

Fuse.Camera

  • iOS: <iOS.StatusBarConfig IsVisible=”false”/>와 함께 Fuse.Camera를 사용할 때의 충돌이 수정되었습니다.

Fuse.Launchers

  • URI가 잘못 인코딩 된 iOS의 버그 수정.

FuseJS/Bundle

  • 모든 번들 파일의 목록을 가져 오는 ‘.list()’ 추가
  • 번들을 ArrayBuffer로 읽기 위한 ‘.readBuffer()’를 추가.
  • 번들 파일을 대상 경로에 쓰기 위한 ‘.extract()’를 추가.

Image

  • 새 이미지에서 다시 사용하는 경우, 로드 실패한 URL 기반 이미지를 다시 로드합니다.
  • 이미지에 reload 및 retry 기능을 추가하여 실패한 이미지를 다시 로드할 수 있게 했습니다.
  • MultiDensityImageSource에 MemoryPolicy가 설정된 경우 발생할 수 있는 무한 재귀 버그가 수정되었습니다.

ScrollingAnimation

  • ScrollingAnimation의 속성이 업데이트 된 경우 애니메이션이 동기화되지 않던 문제가 해결되었습니다.

macOS SIGILL 문제

  • macOS의 번들형 Freetype 라이브러리를 32 비트 및 64 비트 심볼로 업데이트하여 이전 Mac 모델에서 실행할 때 시작시 SIGILL로 인해 .NET 및 미리보기 빌드가 중단되는 문제를 수정했습니다.
  • 일부 이전 Mac 모델의 CPU와 호환되지 않기 때문에 macOS가 AVX 지침을 사용하지 않도록 libjpeg, libpng, Freetype 및 SDL2 라이브러리를 번들로 업데이트했습니다. 이렇게 하면 네이티브 빌드에서 SIGILLs와 관련된 문제가 해결됩니다.

Native

  • 암시적 GraphicsView에 대한 기능 토글이 추가되었습니다. 네이티브 UI만 사용하는 앱을 만들 경우 암시적 GraphicsView를 비활성화하면 성능이 향상될 수 있습니다. 구축시 DISABLE_IMPLICIT_GRAPHICSVIEW를 정의하여 GraphicsView를 비활성화합니다. 예를 들어: ‘uno build -t=ios -DDISABLE_IMPLICIT_GRAPHICSVIEW’.

Gestures

  • Fuse.Input.Gesture는 내부 생성자(internal constructor)만 있습니다. 이것은 외부 코드가 인스턴스를 생성할 수 없다는 것을 의미합니다. 이것은 결코 어떤 방식으로든 실행할 수 없다는 뜻이며 이론상 어떠한 응용 프로그램에도 실제로 영향을 미치지 않아야 합니다.

Native TextInput

  • <TextInput /> 또는 <TextView />를 포커싱할 때 캐럿 위치를 적절하게 업데이트하지 않던 문제가 해결되었습니다.

Route Navigation Triggers

  • Activated, Deactivated, WhileActive, WhileInactve가 중첩된 내비게이션 내부에서 사용될 때의 모든 문제가 수정되었습니다. 이전에는 트리 전체가 아닌 로컬 Navigation만 고려했습니다. 이전 동작이 여전히 필요한 경우 Navigation에서 Path=”Local” 옵션을 설정할 수 있습니다.
  • Activated, Deactivated는 Navigation이 안정화되었을 때만 트리거되도록 수정되었습니다. 이전에 정의되지 않은 동작과 가장 근접한 활성 페이지가 변경되는 순간을 트리거하려는 경우, When=”Immediate”를 설정하세요.
  • NavigationPageProxy 사용 패턴이 변경되었습니다. Rooted가 제거되고 Unrooted는 Dispose로 변경되었으며, 생성자가 부모 인수를 사용합니다. 이렇게 하면 더 안전한 사용성(누수 방지)이 보장됩니다.

WhileActive

  • WhileActive와 같은 네비게이션 트리거를 사용하여 특정 트리 구조의 근본 원인을 해결했습니다.

MapView

  • JS를 통해 MapMarkers를 설정할 때 MapMarker 아이콘 앵커는 X/Y/File 속성을 지원합니다.
  • <MapMarker Tapped=”{myHandler}”/>를 추가하여 각 탭 마커에 대한 데이터 컨텍스트를 유지했습니다.
  • <MapView AllowScroll=”false”/>를 추가하여 사용자 이동 및 스크롤링을 비활성화 할 수 있습니다.
  • ShowMyLocation=”true”를 사용할 때 iPhone 5 장치에서 충돌을 일으키는 버그가 수정되었습니다.

WebView

  • <WebView ScrollEnabled=”false”/>를 추가하여 사용자 이동 및 스크롤링을 비활성화 할 수 있습니다.

MemoryPolicy

  • QuickUnload 메모리 정책이 추가되어 가능한 한 짧은 시간 동안 데이터를 메모리에 유지합니다.

Fuse.Controls.Video

  • iOS에서 HLS 스트림의 크기가 0이 되는 버그가 수정되었습니다.

Expression functions

  • Each 요소 내부에서 요소의 위치를 ​​가져오기 위해 필요한 index 및 offsetIndex 추가
  • 인덱스 함수를 보완하기 위해 mod, even, odd 및 alternate 함수를 추가했습니다. 이것들은 인덱스를 기반으로 스크린상의 시각적인 그룹화 요소를 허용합니다.
  • 삼각 함수 추가 sin, cos, tan, asin, acos, atan, atan2, radiansToDegrees, degreesToRadians
  • 추가 된 수학 함수 abs, sqrt, ceil, floor, exp, exp2, fract, log, log2, sign, pow, round, trunc, clamp
  • 값 사이의 선형 보간을 위한 lerp 함수 추가

Fuse.Reactive

  • 데이터 바인딩이 호환되지 않는 유형(예: 숫자 속성을 부울 값에 바인딩)을 사용할 때 앱이 중단되는 버그를 수정합니다. (Marshal.TryConvertTo는 실패하지 않고 예외를 던집니다).

Fuse.Box / Fuse.Ray

  • Uno.Geometry.Box와 Uno.Geometry.Ray가 Fuse.Box와 Fuse.Ray로 바뀌었습니다.

Uno

UX 컴파일러/퓨즈 미리보기 최적화

  • 퓨즈 미리보기에서 컴파일 시간을 단축하고 편집 속도를 향상시키기 위해 UX 컴파일러를 최적화 했습니다.
  • Android의 allowBackup 옵션은 이제 unoproj 파일의 선택 Android.AllowBackup 값을 통해 구성할 수 있습니다.

Uno.Testing

  • Registry.FindTest()가 제거되었습니다.
  • TestSetup.Runner가 읽기 전용으로 표시되었습니다.
  • Assert.Ignore()가 추가되어 런타임에 테스트를 무시할 수 있습니다.
  • Assert.AreNotEqual(float, float) 및 Assert.AreNotEqual(double, double)의 버그가 수정되어 Assert.AreEqual 카운터 파트와 비슷한 결과 문자열을 형식화합니다.
    TestAttribute와 IgnoreAttribute는 동작에 맞게 적절한 AttributeUsages를 가집니다. 즉, 메소드 외부에서 사용하면 아무것도 하지 않고도 컴파일 오류가 발생합니다.
  • 공개 대상이 되지 않던 내부 세부 정보는 내부용으로 표시되어 있습니다.
      AbstractRunner
      DebugLogMessageDispatcher
      AssertionFailedException
      HttpMessageDispatcher
      NamedTestMethod
      Registry.Add()
      Registry.Count
      NamedTestMethod 레지스트리 [int index]

Uno.Data.Json

  • 동일한 키가 반복되는 JSON 객체가 충돌을 일으키는 버그가 수정되었습니다.