Las pruebas de funciones de dispositivos nativos como Cámara, Vibración y otras, muchas de las cuales se encuentran en la documentación de Ionic Native , no se pueden realizar en el navegador. Esta es una limitación inherente al hecho de que Cordova, la plataforma de la que depende Ionic para poder acceder a las API nativas de Android, iOS y Windows Mobile de un dispositivo, no puede ejecutarse en el navegador.
Se puede solucionar este problema simulando la funcionalidad del complemento nativo.
Aquí hay un ejemplo de cómo simular el complemento de la Camera
:
Continúe y cree una carpeta opcional en la carpeta raíz de su proyecto.
cd src
mkdir mocks
cd mocks
touch camera-mock.ts
Abra camera-mock.ts y copie y pegue el siguiente código:
export class CameraMock {
getPicture(params) {
return new Promise((resolve, reject) => {
resolve("BASE_64_IMAGE_DATA");
});
}
}
A continuación, abra src/app.module.ts
e importe la clase simulada "
import { CameraMock } from "../mocks/camera-mock";
Luego agréguelo a la matriz de proveedores de módulos:
@NgModule({
declarations: [
MyApp,
HomePage
],
imports: [
BrowserModule,
IonicModule.forRoot(MyApp)
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
HomePage
],
providers: [
StatusBar,
SplashScreen,
CameraMock,
{provide: ErrorHandler, useClass: IonicErrorHandler}
]
})
export class AppModule {}
Ahora puedes usarlo en cualquier componente después de importarlo.