Skip to main content
Version: Next

Inici ràpid

Posa en marxa l'Eixam Flutter SDK en cinc passos.

1. Afegeix la dependència

Per a la versió 0.1.0, usa el tag de release acordat que es proporciona durant el lliurament:

dependencies:
eixam_connect_flutter:
git:
url: https://github.com/eixam-tech/eixam-sdk-flutter
ref: <agreed-0.1.0-release-tag>
path: packages/eixam_connect_flutter

2. Importa el paquet

import 'package:eixam_connect_flutter/eixam_connect_flutter.dart';

3. Bootstrap de l'SDK

El teu backend ha de generar la sessió signada — el secret de l'app mai ha d'estar en el client mòbil.

Entorn estàndard

final sdk = await EixamConnectSdk.bootstrap(
const EixamBootstrapConfig(
appId: 'partner-app',
environment: EixamEnvironment.sandbox,
initialSession: EixamSession.signed(
appId: 'partner-app',
externalUserId: 'partner-user-123',
userHash: 'signed-session-hash',
),
),
);

Entorn personalitzat

final sdk = await EixamConnectSdk.bootstrap(
const EixamBootstrapConfig(
appId: 'partner-app',
environment: EixamEnvironment.custom,
customEndpoints: EixamCustomEndpoints(
apiBaseUrl: 'https://partner-api.example.com',
mqttUrl: 'ssl://partner-mqtt.example.com:8883',
),
),
);

:::info Sessió signada El backend genera userHash signant l'externalUserId amb el secret de l'app usant HMAC-SHA256. Consulta Identity Signing per a exemples d'implementació. :::

4. Sol·licita permisos

Les sol·licituds de permisos són decisions explícites de l'app amfitriona — l'SDK no les activa per si sol:

await sdk.requestLocationPermission();
await sdk.requestNotificationPermission();
await sdk.requestBluetoothPermission();

5. Usa l'SDK

Activar un SOS:

await sdk.triggerSos(
const SosTriggerPayload(
message: 'Need assistance',
triggerSource: 'button_ui',
),
);

Connectar un dispositiu:

await sdk.connectDevice(pairingCode: '123456');

Crear un contacte d'emergència:

await sdk.createEmergencyContact(
name: 'Mountain Rescue Desk',
phone: '+34600000000',
email: 'rescue@example.com',
);

Notes importants

warning
  • initialSession és opcional. Si es proporciona, el seu appId ha de coincidir amb l'appId del bootstrap.
  • No passis customEndpoints a entorns que no siguin custom.
  • El bootstrap no sol·licita permisos ni activa accions sensibles a la UX.