sql >> Databasteknik >  >> RDS >> Mysql

Kan två olika enheter ha samma GCM-registrerings-ID?

(från GCM-översikt )

Två olika enheter skulle alltid ha olika registrerings-id. Även olika appar på samma enhet har olika registrerings-ID.

Funktionellt sett är det säkert att behålla en UNIQUE_KEY-begränsning på registrerings-ID:t, men eftersom registrerings-ID:t kan vara långt (upp till 4096 byte, även om det i praktiken vanligtvis är mycket kortare), kan vissa databaser hindra dig från att definiera ett index eller en begränsning på sådana en stor kolumn. Du kanske vill använda en enkelriktad hashfunktion som mappar registrerings-ID:t till ett mindre värde, lagrar det värdet i en mindre kolumn och har begränsningen/indexet på den kolumnen.

När du blir NotRegistered fel, bör du verkligen ta bort det registrerings-ID:t från din DB (eller åtminstone markera det med en status som säger att det är inaktivt, och sluta skicka meddelanden till det). Men om appen kommer att installeras om på en enhet från vilken den tidigare avinstallerades, kan appen få samma registrerings-ID när den registreras igen på GCM, så din server bör tillåta registrerings-ID:n som vid ett tillfälle gav NotRegistered för att bli aktiv igen.

Du bör uppdatera det gamla registrerings-ID:t när du får kanoniskt registrerings-ID i svaret från Google.



  1. Hur väljer man flera kolumner med samma namn med JPA-inbyggd fråga?

  2. Hur inkluderar man det totala antalet returnerade rader i resultatuppsättningen från kommandot SELECT T-SQL?

  3. Konvertera 'datetime2' till 'date' i SQL Server (T-SQL-exempel)

  4. Hur man representerar Oracle Interval i Java