Inicio
Documentación
Recursos
Certificaciones
Comunidad

Recursos

Revisa las actualizaciones de nuestras soluciones y operatividad del sistema o pide soporte técnico.

Comunidad

Recibe las últimas novedades, pide ayuda a otros integradores y comparte tus conocimientos.

Framework Ionic - Integración Cross-Platform - Mercado Pago Developers

Búsqueda inteligente powered by OpenAI 

Framework Ionic

Para comenzar a operar localmente con Redelcom utilizando una App Ionic, sigue los pasos aquí debajo.

Instalar y configurar plugins

Para poder establecer la comunicación con el sistema RDCPass, deberás instalar los plugins como se muestra a continuación.

ionic


AppVersion => (https://ionicframework.com/docs/native/app-version) 

WebIntent => (https://ionicframework.com/docs/native/web-intent)

Una vez instalados, deberás iniciar la configuración añadiéndolos al app.modules.ts como un servicio dentro del arreglo de providers del @NgModule({…}) :

ionic


import { WebIntent } from '@ionic-native/web-intent/ngx'; 
import { AppVersion } from '@ionic-native/app-version/ngx'; 
… 
providers: [ 
 	WebIntent, 
 	AppVersion 
 ], 
… 

Finaliza la configuración del entorno agregando la dependencia al constructor de la clase:

ionic


import { Component } from '@angular/core'; 
import { WebIntent, Intent } from '@ionic-native/web-intent/ngx'; 
import { AppVersion } from '@ionic-native/app-version/ngx'; 
… 
constructor( 
 	private intent: WebIntent 
 	, private app: AppVersion 
 ) 
{…}
 

Enviar y recibir intent desde una App nativa en Android

Para procesar pagos, deberás primero implementar el método que te permitirá enviar un intent a una App nativa en Android:

ionic


startActivity(pay): void { 
 		this.app.getPackageName().then(async (value) => {  
			const options = { 
				action: this.intent.ACTION_SEND, 
				package: value.toString(), 
				extras: { 
					packageName: value.toString(), 
					className: `${value.toString()}.MainActivity`,  monto: `${pay}` 
				}, 
				component: { 
					package: 'redelcom.cl.rdcpass', 
					class: 'redelcom.cl.rdcpass.MainActivity' 
 				}, 
 			}; 
 			this.intent.startActivity(options) 
 			.then((onSucces) => { 
				this.getIntent(); 
 			}, 
 			(onError) => { 
				console.log('error', onError); 
 			}); 
 		} 
	);  
}

Para poder obtener la respuesta a ese intent, implementa el siguiente método:

ionic


getIntent() { 
 		this.intent.getIntent().then(async (intentRDCPass: any) => { 
 				if (intentRDCPass.extras && intentRDCPass.action == this.intent.ACTION_SEND) {  
					this.data = JSON.parse(intentRDCPass.extras['android.intent.extra.TEXT']); 
					this.statusPay = this.data.ESTADO; 
					// ARMAR UN OBJETO CON LOS DATOS DE RESPUESTA QUE SE REQUIERAN.
					let objWithData = { 
						estado: this.data.ESTADO, 
						total: this.data.TOTAL, 
						propina: this.data.PROPINA, 
						medio_pago: this.data.MEDIO_PAGO, 
						codaut: this.data.CODAUT, 
						fecha_hora: this.data['FECHA&HORA'], 
						mensaje_visor: this.data.MENSAJE_VISOR, 
					}; 
					if (this.data.ESTADO == 'APROBADO') { 
						// ACCIÓN PARA EL CASO APROBADO.... 
					} else { 
						// ACCIÓN PARA EL CASO RECHAZADO.... 
					} 
 				} else { 
					setTimeout(() => { 
							this.getIntent(); 
					}, 1000); 
 				} 
		});  
} 

Por último, agrega el intent-filter (Activity) al AndroidManifest.xml de la app compilada:

ionic


<intent-filter> 
 	<action android:name="android.intent.action.SEND" /> 
 	<category android:name="android.intent.category.DEFAULT" /> 
 	<data android:mimeType="text/*" /> 
</intent-filter>

¡Y listo! Ya puedes comenzar a operar con Redelcom desde tu app Ionic.