Passer au contenu

Commencer

  1. Installez le package

    Fenêtre de terminal
    npm i @capgo/capacitor-appinsights
  2. Synchronisation avec les projets natifs

    Fenêtre de terminal
    npx cap sync

Importez le plugin et initialisez-le avec vos informations d’identification AppInsights :

import { CapacitorAppinsights } from '@capgo/capacitor-appinsights';
// Initialize the SDK
const initializeAnalytics = async () => {
await CapacitorAppinsights.init({
partnerId: 'your-partner-id',
partnerKey: 'your-partner-key'
});
};
// Set user ID for tracking
const setUser = async (userId: string) => {
await CapacitorAppinsights.setUserId({ userId });
};
// Get SDK state
const checkSDKState = async () => {
const state = await CapacitorAppinsights.getState();
console.log('SDK State:', state);
};
// Get plugin version
const checkVersion = async () => {
const { version } = await CapacitorAppinsights.getPluginVersion();
console.log('Plugin version:', version);
};

Initialisez AppInsights SDK avec vos informations d’identification.

await CapacitorAppinsights.init({
partnerId: 'your-partner-id',
partnerKey: 'your-partner-key'
});

Paramètres :

  • partnerId (chaîne) : votre identifiant de partenaire AppInsights
  • partnerKey (chaîne) : votre clé de partenaire AppInsights

Définissez ou mettez à jour l’ID utilisateur après l’initialisation.

await CapacitorAppinsights.setUserId({
userId: 'user-123'
});

Paramètres :

  • userId (string) : L’ID utilisateur à définir pour le suivi

###getState()

Obtenez l’état actuel du SDK.

const state = await CapacitorAppinsights.getState();
console.log(state);
// {
// initCompleted: true,
// jobScheduled: true,
// permissionAcquired: true
// }

Retours :

  • initCompleted (booléen) : indique si l’initialisation de SDK est terminée
  • jobScheduled (booléen) : indique si la tâche de collecte de données est planifiée
  • permissionAcquired (booléen) : indique si les autorisations nécessaires sont acquises

###getPluginVersion()

Obtenez la version native du plugin Capacitor.

const { version } = await CapacitorAppinsights.getPluginVersion();
console.log('Version:', version);
import { CapacitorAppinsights } from '@capgo/capacitor-appinsights';
export class AnalyticsService {
private initialized = false;
async initialize(partnerId: string, partnerKey: string) {
try {
await CapacitorAppinsights.init({
partnerId,
partnerKey
});
const state = await CapacitorAppinsights.getState();
this.initialized = state.initCompleted;
console.log('AppInsights initialized:', state);
} catch (error) {
console.error('Failed to initialize AppInsights:', error);
}
}
async identifyUser(userId: string) {
if (!this.initialized) {
throw new Error('AppInsights not initialized');
}
await CapacitorAppinsights.setUserId({ userId });
console.log('User identified:', userId);
}
async getSDKStatus() {
const state = await CapacitorAppinsights.getState();
return {
ready: state.initCompleted && state.permissionAcquired,
tracking: state.jobScheduled,
state
};
}
}

## meilleures pratiques

  1. Initialiser tôt Initialisez le SDK dès que votre application démarre pour garantir un suivi précis :

    // In your app initialization
    await CapacitorAppinsights.init({
    partnerId: process.env.APPINSIGHTS_PARTNER_ID,
    partnerKey: process.env.APPINSIGHTS_PARTNER_KEY
    });
  2. Définir l’ID utilisateur lors de la connexion Identifiez les utilisateurs après authentification :

    async function onUserLogin(user) {
    await CapacitorAppinsights.setUserId({
    userId: user.id
    });
    }
  3. Vérifiez l’état SDK Vérifiez que SDK est prêt avant les opérations critiques :

    const state = await CapacitorAppinsights.getState();
    if (!state.initCompleted) {
    console.warn('AppInsights not ready');
    }
  4. Gérer les erreurs avec élégance

    try {
    await CapacitorAppinsights.init(config);
    } catch (error) {
    console.error('Analytics initialization failed:', error);
    // Continue app operation even if analytics fails
    }

## Remarques sur la plate-forme

  • Nécessite iOS 10.0+
  • Assurez-vous que vous disposez des autorisations nécessaires dans Info.plist pour le suivi
  • Nécessite Android 5.0 (API 21)+
  • Peut nécessiter une autorisation de statistiques d’utilisation en fonction des fonctionnalités de suivi

###Web

  • Non pris en charge sur la plateforme Web