Problem with Facebook name encoding

When I log through Facebook I map fields “first-name” and “last-name” into properties name and surname of my BackendlessUser instance. In the table, the surname “Uchański” is spelled correctly but when I download the property into NSString on iOS it says “UchaDski” misspelling the Ń letter. When I log a user through mail and manually set the property (or upload it through iOS) to “Uchański” everything is fine both on server as well as in my NSString object. It appears to be some kind of encoding compatibility issue between Facebook-string and NSString. Can anyone help ?

Ok I fixed it somewhat…There is a strange thing:

When I try to acces my surname through [[backendless.userService currentUser] getProperty: @“surname”]; i get “UchaDski” instead of “Uchański”. But if I query for BackendlessUser with my [backendless.userService currentUser].objectId I get “Uchański” with correct spelling.
Can anyone address this issue ?

Hi Bartek,

Thank you. Your info is very helpful, we investigate this issue and let you know asap.

Regards,
Slava

Hi Bartek,

I’ve set

id userData = [NSJSONSerialization JSONObjectWithData:[absoluteString dataUsingEncoding:NSUTF16StringEncoding] options:0 error:nil];
so you could try again, and let us know how it goes.
The fixed libs are in our ios-SDK github (CommLibiOS & backendless)

Ok so I replaced the old libs with the new ones but still when I get my name and surname through [[backendless.userService currentUser] getProperty: @“name”] (or surname) polish letter “ń” is misspelled “D”. So nothing changed :confused:

Still the interesting part is that everything works fine when I get my user object through dataquery just like any other object.

Ok, Bartek,

We use native iOS method to retrieve user data:
[NSJSONSerialization JSONObjectWithData:[absoluteString dataUsingEncoding:NSUTF16StringEncoding] options:0 error:nil];

NSUTF16StringEncoding is Unicode, maybe you know what dataUsingEncoding: we should use to fix this problem?

Please, add the line:

DebLog.setIsActive(true)
in your project just after backendless.initApp(),
then run your app and send a log to support@backendless.com.
We investigate it and try to fine a solution.

Ok I sent the log.

Please clarify: this log is from a what login? - loginWithFacebookSDK: or

easyLoginWithFacebookFieldsMapping: