Android 将带有富文本信息的 JSON 字符串 callback 到 JS, JS 端 JSON.paese(data) 失败

2018-08-31 17:44:39 +08:00
 stephenliubp

在设计 Hybrid 的时候,出于鉴权、数据安全等角度出发。将嵌入 App 内的网络请求让 Native 完成然后将数据包一下 {success: 1, data:  请求到的数据} 。然后将数据转成 JSON 串,然后 callback 到 JS。JS 进行 JSON.parse(data) 然后去处理数据。目前遇到的问题是 iOS 成功,Android 失败。 本人写 iOS 和 Web。贴一下 iOS 代码。 ``` responseCallback([self convertToJsonData:@{@"success":@"1",@"data":json}]);

- (NSString *)convertToJsonData:(NSDictionary *)dict{
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict options:0 error:&error];
NSString *jsonString;
if (!jsonData) {
    LBPLog(@"%@",error);
}else{
    jsonString = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding];
}
return jsonString;

}


各位大佬,Android 使用 GSON,请各位大佬支招。
3180 次点击
所在节点    iDev
4 条回复
dorentus
2018-08-31 18:48:51 +08:00
iOS 成功,Android 失败,不是应该贴会失败的代码吗……
stephenliubp
2018-08-31 20:42:03 +08:00
@dorentus 我没有他代码,我的意思是给大家看看 iOS 的实现思路。让懂 Android 的人根据我这种写法想到 Android 对应的实现方法
hcymk2
2018-08-31 22:41:08 +08:00
其实看代码还不如对比下 js 收到 2 种语言生成的 json.
stephenliubp
2018-08-31 23:36:39 +08:00
@hcymk2 看到不同也没啥用。观察给人的感觉就是字符串处理了。字符串处理肯定不行,找不到一个普适的准则

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/485007

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX