Introduzione ad Azure Mobile Engagement per app per Windows Phone Silverlight

Questo argomento descrive come usare Azure Mobile Engagement per ottenere informazioni sull'uso dell'app e sull'invio di notifiche push a utenti segmentati di un'applicazione Silverlight per Windows Phone. Questa esercitazione illustra uno scenario di trasmissione semplice tramite Mobile Engagement. Si creerà un'app per Windows Phone Silverlight vuota che raccoglie dati di base e riceve notifiche push tramite il Servizio notifica push Microsoft (MPNS).

Nota

Il servizio Azure Mobile Engagement verrà ritirato a marzo 2018 ed è attualmente disponibile solo per i clienti esistenti. Per altre informazioni, vedere Mobile Engagement.

Nota

I progetti Windows Phone 8.1 e versioni precedenti non sono supportati in Visual Studio 2017. Per altre informazioni, vedere Selezione della piattaforma e compatibilità di Visual Studio 2017.

Nota

Se si usa Windows Phone 8.1 (non Silverlight) come piattaforma di destinazione, fare riferimento all' esercitazione per le app di Windows universali.

Per completare questa esercitazione, è necessario disporre di:

Nota

Per completare l'esercitazione, è necessario disporre di un account Azure attivo. Se non si dispone di un account, è possibile creare un account di valutazione gratuita in pochi minuti. Per informazioni dettagliate, vedere la pagina relativa alla versione di valutazione gratuita di Azure.

Configurare Mobile Engagement per l'app per Windows Phone

  1. Accedere al portale di Azure.
  2. Fare clic su Nuovo, quindi su Web e dispositivi mobili e infine su Mobile Engagement.

  3. Nel pannello New Mobile Engagement App Collection (Nuova raccolta di app Mobile Engagement) visualizzato si creerà una raccolta di app invece che un'app come nel portale di Azure classico. Immettere le seguenti informazioni:

    • Nome: Nome of your raccolta di applicazioni
    • Piattaforme: selezionare le piattaforme di destinazione per l'app nel pannello Piattaforme che verrà aperto. Ad esempio, se è necessaria un'app sia per iOS che per Android, selezionare entrambe le piattaforme per creare due app in questa raccolta di app.

    • Sottoscrizione: selezionare la sottoscrizione di Azure.
    • Gruppo di risorse: selezionare il gruppo di risorse di Azure in cui inserire questa risorsa di Azure (Raccolta di app Mobile Engagement). È possibile scegliere di crearne uno nuovo.
    • Località: area in cui verranno archiviati i dati su questa raccolta di app e su questa app.
  4. Esplorare le raccolte di app Mobile Engagement facendo clic su Esplora e cercando Mobile Engagement

  5. Verrà visualizzato un elenco di raccolte di app Mobile Engagement: assicurarsi di avere la stessa sottoscrizione di Azure in cui è stata creata la raccolta di app.

  6. Fare clic sulla raccolta di app creata nel passaggio precedente per aprire il pannello della risorsa raccolta di app che visualizzerà le diverse app presenti in questa raccolta di app.

  7. Fare clic sull'app creata per la piattaforma per cui si sta sviluppando.

  8. Fare clic sul pulsante di comando Informazioni di connessione in alto per aprire il pannello Informazioni di connessione e copiare la stringa di connessione.

Connettere l'app al back-end di Mobile Engagement

Questa esercitazione presenta una "integrazione di base", che è la configurazione minima necessaria per raccogliere i dati e inviare una notifica push. La documentazione relativa all'integrazione completa è disponibile nella Integrazione di Mobile Engagement SDK per Windows Phone

Si creerà un'app di base con Visual Studio per illustrare l'integrazione.

Creare un nuovo progetto Windows Phone Silverlight

I passaggi seguenti presuppongono l'utilizzo di Visual Studio 2015 anche se i passaggi sono simili nelle versioni precedenti di Visual Studio.

  1. Avviare Visual Studio e selezionare Nuovo progetto nella schermata Home.
  2. Nella finestra popup selezionare Windows 8 -> Windows Phone -> Applicazione vuota (Silverlight per Windows Phone). Inserire Nome e Nome soluzione dell'app, quindi fare clic su OK.

  3. È possibile scegliere la versione Windows Phone 8.0 o Windows Phone 8.1 come piattaforma di destinazione.

A questo punto è stata creata una nuova app per Windows Phone Silverlight in cui si integrerà Azure Mobile Engagement SDK.

Connettere l'app al back-end di Mobile Engagement

  1. Installare il pacchetto nuget MicrosoftAzure.MobileEngagement nel progetto.
  2. Aprire WMAppManifest.xml nella cartella Proprietà e assicurarsi che le funzionalità seguenti siano dichiarate (in caso contrario, aggiungerle) nel tag <Capabilities />:

     <Capability Name="ID_CAP_NETWORKING" />
     <Capability Name="ID_CAP_IDENTITY_DEVICE" />
    

  3. Incollare la stringa di connessione copiata in precedenza per l'app Mobile Engagement e incollarla nel file Resources\EngagementConfiguration.xml, tra i tag <connectionString> e </connectionString>:

  4. Nel file App.xaml.cs:

    a. Aggiungere l'istruzione using:

         using Microsoft.Azure.Engagement;
    

    b. Inizializzare l'SDK nel metodo Application_Launching:

         private void Application_Launching(object sender, LaunchingEventArgs e)
         {
           EngagementAgent.Instance.Init();
         }
    

    c. Inserire quanto segue in Application_Activated:

         private void Application_Activated(object sender, ActivatedEventArgs e)
         {
            EngagementAgent.Instance.OnActivated(e);
         }
    

Abilitare il monitoraggio in tempo reale

Per iniziare a inviare dati e assicurarsi che gli utenti siano attivi, è necessario inviare almeno una schermata (Activity) al back-end di Mobile Engagement.

  1. Nel MainPage.xaml.cs, aggiungere l’istruzione using:

     using Microsoft.Azure.Engagement;
    
  2. Sostituire la classe di base di MainPage, che si trova prima di PhoneApplicationPage, con EngagementPage.

     class MainPage : EngagementPage 
    
  3. Nel file MainPage.xml:

    a. Aggiungere le dichiarazioni di spazi dei nomi:

         xmlns:engagement="clr-namespace:Microsoft.Azure.Engagement;assembly=Microsoft.Azure.Engagement.EngagementAgent.WP"
    

    b. Sostituire phone:PhoneApplicationPage nel nome del tag XML con engagement:EngagementPage

Connettere l'app con monitoraggio in tempo reale

Questa sezione descrive come connettere l'app al back-end di Mobile Engagement usando la funzionalità di monitoraggio in tempo reale di Mobile Engagement.

  1. Nell'account Azure Mobile Engagement, accertarsi di selezionare l'app che si desidera monitorare e gestire nel portale di Mobile Engagement. Accedere al portale di Mobile Engagement facendo clic sul pulsante Engagement nella parte inferiore.

  2. Viene visualizzato il portale Mobile Engagement. Se non è selezionata la scheda Monitoraggio, fare clic su Monitoraggio.
  3. Verranno visualizzati, in tempo reale, tutti i dispositivi in cui l'app verrà avviata.
  4. Avviare l'app. Se l'integrazione è corretta si noterà una sessione di monitoraggio, che significa che l'app ora è collegata al back-end di Mobile Engagement e sta inviando dati ad esso.

Abilitare le notifiche push e la messaggistica in-app

Mobile Engagement consente di interagire con gli utenti e coinvolgerli tramite notifiche push e messaggistica in-app nel contesto di campagne. Questo modulo è denominato REACH nel portale di Mobile Engagement. Le sezioni seguenti consentono di configurare l'app per la ricezione.

Abilitare l'app alla ricezione di notifiche push MPNS

Aggiungere nuove funzionalità al file WMAppManifest.xml :

    ID_CAP_PUSH_NOTIFICATION
    ID_CAP_WEBBROWSERCOMPONENT

Inizializzare REACH SDK

  1. In App.xaml.cs chiamare EngagementReach.Instance.Init(); nella funzione Application_Launching subito dopo l'inizializzazione dell'agente:

     private void Application_Launching(object sender, LaunchingEventArgs e)
     {
        EngagementAgent.Instance.Init();
        EngagementReach.Instance.Init();
     }
    
  2. In App.xaml.cs chiamare EngagementReach.Instance.OnActivated(e); nella funzione Application_Activated subito dopo l'inizializzazione dell'agente:

     private void Application_Activated(object sender, ActivatedEventArgs e)
     {
        EngagementAgent.Instance.OnActivated(e);
        EngagementReach.Instance.OnActivated(e);
     }
    

Le impostazioni sono state completate. Ora è necessario verificare di avere eseguito correttamente l'integrazione di base.

Inviare una notifica all'app

A questo punto si crea una campagna di notifica push semplice che invia una notifica push all'app.

  1. Passare alla scheda REACH nel portale di Mobile Engagement.
  2. Fare clic su Nuovo annuncio per creare una campagna di notifica push.

  3. Impostare il primo campo della campagna seguendo questa procedura:

    a. Fornire un Nome per la campagna.

    b. Selezionare l' Ora di recapito su Qualsiasi ora

    d. Nel testo della notifica digitare il titolo che apparirà in grassetto nel push.

    e. Digitare quindi il messaggio

  4. Scorrere verso il basso e nella sezione Contenuto selezionare Notification only (Solo notifica).

  5. L'impostazione della campagna più semplice possibile è stata completata. Ora scorrere nuovamente verso il basso e fare clic sul pulsante Crea per salvare la campagna.
  6. Come ultimo passaggio, fare clic su Attiva per attivare la campagna e inviare le notifiche push.

Si dovrebbe ora vedere una notifica sul dispositivo che verrà visualizzata come una notifica all'interno dell'app se l'app è aperta in caso contrario come una notifica popup come quella seguente: