LVRS Storyboard Frame

backend/Platform.svx

Path: backend/Platform.svx

Last modified:

플랫폼

위치: backend/platform/platforminfo.h / backend/platform/platforminfo.cpp

Platform(PlatformInfo)는 표준 런타임 대상 메타데이터 및 대상 정책 도우미 API를 노출합니다.

목적

  • 현재 OS/arch/백엔드 정보를 보고합니다.
  • 사용자 대상 토큰을 정규화합니다.
  • 대상 기능 및 백엔드 준비 확인을 제공합니다.

속성

신원:

  • os
  • canonicalOs
  • arch
  • graphicsBackend

가족 깃발:

  • mobile, desktop
  • android, ios, macos, windows, linux, wasm

백엔드 기능 플래그:

  • metalSupported
  • vulkanSupported

대상 카탈로그:

  • runtimeTargets
  • desktopTargets
  • mobileTargets
  • runtimeProfiles

방법

정규화 및 일치:

  • normalizeTarget(target)
  • isKnownTarget(target)
  • targetMatchesCurrent(target)

가족 수표:

  • targetIsMobile(target)
  • targetIsDesktop(target)

정책 확인:

  • supportsTargetGeneration(target)
  • backendFeatureReadyFor(target)
  • graphicsBackendFor(target?)
  • runtimeProfile(target?)

사용예

import LVRS 1.0 as LV

Component.onCompleted: {
    const profile = LV.Platform.runtimeProfile("ios")
    console.log("ios backend:", profile.graphicsBackend)
}

운영 참고 사항

  • 별칭 토큰(예: osx, win32)은 비교하기 전에 정규화되어야 합니다.
  • runtimeProfile(target)는 구조화된 목표 결정에 선호되는 API입니다.

확장된 예: 목표 역량 게이트

import LVRS 1.0 as LV

function canBuildFor(target) {
    if (!LV.Platform.isKnownTarget(target))
        return false
    return LV.Platform.supportsTargetGeneration(target)
        && LV.Platform.backendFeatureReadyFor(target)
}

실용적인 참고 사항

  • 대상 식별자를 유지하기 전에 normalizeTarget()를 사용하세요.
  • 한 번의 호출로 여러 정책 확인이 필요한 경우 runtimeProfile(target)를 선호합니다.

FAQ

Q. 원시 os 문자열에서 앱 논리가 분기되어야 합니까? A. 별칭/정규화 버그를 줄이려면 정식 도우미(targetIsMobile, runtimeProfile)를 선호하세요.