2014-11-06 16 views
6

Mi trovo ad affrontare un problema relativo alla gestione del registro: annullare la registrazione delle mie attività/servizi o qualsiasi altra cosa utilizzi da un'installazione aerogear.Annulla registrazione client Android dal server di push unificato di aerogear

Se mi registro da un servizio onCreate() e annullo la registrazione in onDestroy(), quando disinstalla l'applicazione, il dispositivo rimane registrato sul lato server ... Se installo di nuovo l'applicazione, registra di nuovo il dispositivo e puoi ripetere questo fino a quando non ti stanchi. E, naturalmente, inviando una push all'alias dato dall'utente, i messaggi arriveranno una volta per registrazione.

Inoltre, ogni volta che l'applicazione si registra in aerogear, il dispositivoToken è diverso, il che significa che ha più a che fare con un hash generato per ogni installazione che con un identificativo univoco per la coppia (app, dispositivo).

Quindi, ora la domanda, come gestire l'intero ciclo? e voglio dire, la corsa quotidiana e il problema se l'utente decide di disinstallare l'app, viene ucciso e non può annullare la registrazione e un mese dopo decide che gli è piaciuto così tanto che finisce per reinstallare nuovamente la cosa. thx.

aggiornamento

Il problema cresce come vado testare la mia domanda. Se accedo a due utenti diversi nello stesso dispositivo, ottengo entrambi i messaggi degli utenti e devo ruotare un po 'di più l'implementazione del client.

aggiornamento con i dati del database aerogear

here's il registro di installazione per due dispositivi con tre reinstallazioni:


id alias deviceToken deviceType enabled operatingSystem osVersion platform variantID 
0dd99505-bba9-45e9-bfbf-38621bd41c3d [email protected] APA91bG9XSPpwbFenw0UETFLRxr2XoFw-HlH5yZpPgoCIVZLnv0QSqCx5iKqqhJ-tWF5CRISbydv6ItWZKxklD8OPtfxvuq1ekQEI3XkbFajsmGIJ3yjUIC0MGw3v2ITVd6byVtZLsI9uTfiDXyeNrXTxprzVxr9ng ANDROID 1 android 4.4.4 android 4ae83272-5db7-41f6-879d-c907a39bd3fc 
0ee3619f-0eb4-4139-b1fa-fe3403eb380c [email protected] APA91bFrNknt7d57dFR5DagE4Nf1bCVyB93Jl1xU5_qELwYn5JmjYUpXrLE10yC6beZdUgae0ZgtKXgLI4LI-E_ROAFEI4xi-ZPhuE8UZB6K05L_mIWSk7kt32D7S9G2clw3WG51zvcQmaeg8xsG_VW-rnwfKZQVcg ANDROID 1 android 4.4.4 android 4ae83272-5db7-41f6-879d-c907a39bd3fc 
107d4dac-fbcf-4f82-9135-702b83d06f7f [email protected] APA91bEaN4AMJPZgML931rO4AdrMudfTmGVmYPqqARVLX1RxIfyYB46fGxlSK0w7g3qnU2d_cVOBi907TFIMoxBaOe3bvKI8DqsacrXMmT-DjhFoFRS2z4QCec9u0aRPm-EB9UwhfMrE3RrctdxDdNCQ0douuppYVQ ANDROID 1 android 4.4.4 android 4ae83272-5db7-41f6-879d-c907a39bd3fc 
161474b6-067d-4b54-a750-e21a9896814e [email protected] APA91bGFE6cxLcxPDoRmv-HEIpA2jQndccrCryuR3q5BN4PG3EyHxISFoMCIwaPPXX8BIinrJOvNCbwpIrVOKw_mSv5TcLZnSgonR1grpiRkJ0mmwbFCme2CrwoMpkLkVUP7ZjwnYsr0HR3MKzmJLakrnlN-eMKr-g ANDROID 1 android 4.4.4 android 4ae83272-5db7-41f6-879d-c907a39bd3fc 
a5cddabe-1c00-4369-b4cc-f6c5da8f8740 [email protected] APA91bGmFT7NCpfb1q4WHFK2wmQCQdMtW9ulQLiZYwrt9oyU4mqv9gCBN959pCw_wKy2zHw-JBU0p5SCzdpKN5l8i7uqPWk24ORHKE1Vf6rRUINkIRJheKVT6V6Wk38WQ7Rw1AgrqYXZN7WUImVSgd5cqq_p8lLISg ANDROID 1 android 4.4.4 android 4ae83272-5db7-41f6-879d-c907a39bd3fc 
f7514716-68d9-4d00-837a-f1f9da503151 [email protected] APA91bHTFJE7-nz_KB4aa2RUcEnFTVB0IzQZ-ZffPTujLWgi60xTMUeAet6YoUZJnXKnhBOSdAPgoaLDW18PWnwKXtc2MXxKjMYQQENNDdOxKQIV4fnMrAFWfwD_VT6x5XOJUWdQovGUwXiMX9SshCDvZJ4QnM1x_w ANDROID 1 android 4.4.4 android 4ae83272-5db7-41f6-879d-c907a39bd3fc 

risposta

0

penso che il primo problema era un bug del server UnifiedPush, ma è già fisso .

Informazioni sull'aggiornamento quando si registra un dispositivo su UPS, l'UPS non conosce i propri utenti, quindi è necessario inviare alcune informazioni con il messaggio e controllarlo sul client.

+0

Ho appena installato Aerogear unified push server 1.0.3 in Openshift e non è stato risolto. Dopo aver disinstallato e installato l'applicazione, il programma di installazione è registrato due volte. – eduyayo

+0

@eduyayo Puoi inviarlo alla nostra [mailing list] (http://aerogear-dev.1069024.n5.nabble.com/) o aprire un [jira] (https://issues.jboss.org/browse/ AGPUSH) con maggiori dettagli per indagare? – Passos

+1

Nel mio caso, se l'utente non riesce a annullare la registrazione durante la disconnessione e accede nuovamente, riceve una notifica per due volte poiché è stato registrato per due volte. C'è un modo per annullare la registrazione della registrazione precedente mentre si registra nuovamente con lo stesso dispositivo? –