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.
- Referencia de estado: Documentación de estado de AR tracker de WeChat Mini Program.
- Ejemplo de escucha:
<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:
- Escanee el código QR oficial de Sample de WeChat Mini Program.

- 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.
- Escanee el código QR oficial de Sample de WeChat Mini Program.
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.