• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

240
Vistas
error de exposición nativa de reacción: rechazo de promesa no manejado: TypeError: null no es un objeto (evaluando 'RNAlarmNotification.scheduleAlarm')

Estoy tratando de usar un paquete de notificación (react-native-alarm-notification) en mi proyecto React Native, pero tengo algunos problemas. Después de la instalación, intentar ejecutar scheduleAlarm() da como resultado el siguiente error:

[Rechazo de promesa no manejado: TypeError: null no es un objeto (evaluando 'RNAlarmNotification.scheduleAlarm')].

No estoy completamente seguro de cuál es el problema, ya que los parámetros 'requeridos' de ScheduleAlarm están llenos y no estoy seguro de qué objeto nulo arroja un error. Intentar completar todos los parámetros posibles en scheduleAlarm aún arroja un valor nulo, al igual que dar solo una fecha de alarma y asumir que se asignan valores predeterminados. Sin embargo, rastrear la ubicación del error muestra que el error proviene de los módulos regenerator-runtime y react-native que provienen de la compilación predeterminada del proyecto React, no del paquete de notificación.

¿Alguien tiene una solución al problema?

Función.js:

 import { StatusBar } from 'expo-status-bar'; import React, {useState} from 'react'; import { StyleSheet, Text, View, TextInput, Button } from 'react-native'; import ReactNativeAN from 'react-native-alarm-notification'; export default function ShowTasks() { async function alarmTest(){ console.log("Alarm test start"); const fireDate = ReactNativeAN.parseDate(new Date(Date.now() + 10000)); const alarmNotifData = { title: "My Notification Title", message: "My Notification Message", channel: "my_channel_id", small_icon: "../icon.png", scheduleType:"once", data: { foo: "bar" }, fire_date:fireDate, }; const alarm = await ReactNativeAN.scheduleAlarm({...alarmNotifData}); console.log("Alarm test finish"); } return ( <View> <Button onPress={() => {alarmTest();}} title= 'Click here to test alarm.'> </Button> <StatusBar style="auto" /> </View> ); }
almost 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

La reconstrucción de la aplicación resolvió mi problema:

 npx react-native run-android

Para Android, el paquete se vinculará automáticamente en la compilación. pero si no es así, debe vincularlo manualmente.

Realice los siguientes cambios:

android/app/src/main/java//MainApplication.java

 add import com.emekalites.react.alarm.notification.ANPackage; on the imports section add packages.add(new ANPackage()); in List<ReactPackage> getPackages();

Android/aplicación/build.gradle

 add implementation project(':react-native-alarm-notification') in the dependencies block

android/configuraciones.gradle

agregar:

 include ':react-native-alarm-notification' project(':react-native-alarm-notification').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-alarm-notification/android')

Consulte la documentación aquí

almost 3 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda