Table of Contents

Problemas conocidos y limitaciones del plugin Mega de WeChat Mini Program

Este artículo presenta los problemas conocidos y las limitaciones del plugin Mega Mini Program durante su uso.

Problemas conocidos de WeChat

Defectos confirmados actualmente en WeChat xr-frame o VisionKit. Cuando ocurren, la funcionalidad AR falla. Preste atención a los escenarios de activación relacionados durante el desarrollo.

Excepción de detección de plano de WeChat

En casos específicos, como cuando aparece una gran pared blanca en la imagen o la cámara está bloqueada durante mucho tiempo, la detección de plano proporcionada por WeChat puede entrar en un estado anormal. En este estado, MegaTracker no puede funcionar normalmente.

Para el método de tratamiento, consulte Manejo de excepción de Plane AR tracker.

Tiempo de inicialización de Session largo

AR Session solo puede completar la inicialización después de que finalice la inicialización de detección de plano de WeChat. En algunos casos, la inicialización de detección de plano de WeChat tarda mucho tiempo.

Para saber por qué AR Session debe esperar a que finalice la inicialización de xr-frame ARTracker, consulte Cómo funciona MegaTracker en xr-frame.

<xr-ar-tracker id="xrARTracker" mode="Plane" bind:ar-tracker-state="handleARTrackerState"></xr-ar-tracker>
handleARTrackerState({detail}) {
    if (detail.value.state == xrFrameSystem.EARTrackerState.Detected) {
        console.log('Plane is now detected by XR-Frame ARTracker.');
    }
}

worldPosition del nodo no se actualiza inmediatamente en el frame actual

En este ejemplo, trs.worldPosition no se actualiza a tiempo:

public onTick(delta, data) {
    const trs = this.el.getComponent(xrFrameSystem.Transform);
    // WorldPosition de este nodo antes de la actualizacion
    console.log(`World Position before update: ${trs.worldPosition.x}, ${trs.worldPosition.y}, ${trs.worldPosition.z}`);
    // LocalPosition de este nodo antes de la actualizacion
    console.log(`Local Position before update: ${trs.Position.x}, ${trs.Position.y}, ${trs.Position.z}`);
    trs.position.x += 0.1;
    trs.position.y += 0.1;
    trs.position.z += 0.1;
    // WorldPosition de este nodo no se ha actualizado
    console.log(`World Position after update: ${trs.worldPosition.x}, ${trs.worldPosition.y}, ${trs.worldPosition.z}`);
    // LocalPosition de este nodo se ha actualizado
    console.log(`Local Position after update: ${trs.Position.x}, ${trs.Position.y}, ${trs.Position.z}`);
}

Durante el desarrollo, se recomienda usar siempre LocalTransform, es decir, el.getComponent(xrFrameSystem.Transform).position y el.getComponent(xrFrameSystem.Transform).rotation.

Excepción al cambiar la orientación de pantalla

Si se establece "auto" en window dentro de la configuración global app.json de WeChat Mini Program,

después de que el dispositivo salga del Mini Program en modo horizontal y vuelva a entrar en modo vertical, la vista AR puede volverse anormal.

Por lo tanto, no use "auto" en aplicaciones AR Mini Program en ningún momento.

Limitaciones de uso

Requisitos estrictos para que la función funcione. Si no se cumplen, la función no está disponible, pero puede evitarse ajustando la configuración o el entorno.

Limitaciones de dispositivos

Los dispositivos que ejecutan el plugin Mega Mini Program deben admitir al menos la interfaz de plano WeChat VisionKit V1. Para obtener resultados ideales, se recomienda usar dispositivos que admitan la interfaz de plano WeChat VisionKit V2.

  • Lista de dispositivos compatibles: consulte lista de compatibilidad de la interfaz AR de plano V2.

  • Método de comprobación rápida:

    1. Escanee el código QR oficial de Sample de WeChat Mini Program. Official WeChat Mini Program Sample QR code
    2. Después de entrar en el Mini Program, navegue a Interface > VisionKit visual capability > Horizontal plane AR-v2 para determinar rápidamente si el dispositivo actual es compatible.

Si necesita usar el servicio Mega en dispositivos que no admiten VisionKit, consulte mejores prácticas para escenas de navegación y use el producto EasyAR Sense AR navigation, compatible con casi todos los dispositivos.

Configuración obligatoria de PlaneMode

Debido a limitaciones de compatibilidad de algunas interfaces de WeChat, planeMode debe configurarse como 1.

<xr-scene ar-system="modes:Plane; planeMode: 1" bind:ready="handleReady">

Limitaciones de la función GPS

Aún no se admite alinear Block mediante GPS.

Aún no se admite colocar datos de anotación mediante GPS.

Temas relacionados