[android] Analizza i caratteri ASCII con Erlang


Answers

Question

Confuso con ciò che deve essere fatto l'analisi e con quale client / server finale.

When i send an Umlaut 'Ö' to my ejabberd, 
it is received by ejabberd as <<"195, 150">>

A seguito di questo invio questo al mio cliente come notifiche push (via GCM / APNS in silenzio). Da lì, il client costruisce mediante decodifica UTF-8 su ogni numero uno per uno (questo è sbagliato).

i.e. 195 is first decoded to gibberish character � and so on.

Questa ricostruzione necessita di identificazione se due byte devono essere intrattenuti o 3 o più. Questo varia con la lingua delle lettere (tedesco qui ad esempio).

Come potrebbe il cliente identificare quale lingua verrà ricostruita (numero di byte da decodificare in una volta sola)?

Per aggiungere altro

lists:flatten(mochijson2:encode({struct,[{registration_ids,[Reg_id]},{data ,[{message,Message},{type,Type},{enum,ENUM},{groupid,Groupid},{groupname,Groupname},{sender,Sender_list},{receiver,Content_list}]},{time_to_live,2419200}]})).

Prodotto il json come:

"{\"registration_ids\":[\"APA91bGLjnkhqZlqFEp7mTo9p1vu9s92_A0UIzlUHnhl4xdFTaZ_0HpD5SISB4jNRPi2D7_c8D_mbhUT_k-T2Bo_i_G3Jt1kIqbgQKrFwB3gp1jeGatrOMsfG4gAJSEkClZFFIJEEyow\"],\"data\":{\"message\":[104,105],\"type\":[71,82,79,85,80],\"enum\":2001,\"groupid\":[71,73,68],\"groupname\":[71,114,111,117,112,78,97,109,101],\"sender\":[49,64,100,101,118,108,97,98,47,115,100,115],\"receiver\":[97,115,97,115]},\"time_to_live\":2419200}"

dove avevo dato "ciao" come messaggio e mochijson mi ha dato i valori ASCII [104,105].

The groupname field was given the value "Groupname",
the ASCIIs are also correct after json creation i.e. 71,114,111,117,112,78,97,109,101

Tuttavia quando uso http://www.unit-conversion.info/texttools/ascii/

It is decodes as Ǎo��me and not "Groupname".

Quindi, chi dovrebbe fare l'analisi? Come dovrebbe essere gestito lo stesso.

Il mio messaggio ricostruito è tutto gibberesco quando l'ASCII viene ricostruito.

Grazie




Links