1 手机适配的问题
android ios 平台不一样,于是手机适配的方法为
export function hotelR() {
const screenWidth = Dimensions.get('window').width;
if (Platform.OS === 'ios') {
return (screenWidth / 375);
} else {
return (screenWidth / 360);
}
}
该结果在不同的机器上的结果值是不一样的,目前发现在小米note等机器 结果为1.09….. 界面显示不出来,后将该返回值改为1 正确显示,后发现在不同的机器上显示的值不一样。原因尚不明确。
2 在
HashMap<String, Object> commentMap = new HashMap<>();
commentMap.put("HotelId", hotelId);
commentMap.put("HotelType", hotelType);
commentMap.put("HotelStar", starEType.getValue());
commentMap.put("NetInfo", HotelUtils.isWifi(context) == true ? 1 : 0);
String encode = null;
String str = new org.json.JSONObject(commentMap).toString();
try {
encode = URLEncoder.encode(str, "utf-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
String hostUrl = "http://10.32.151.12:5389";
SpannableStringBuilder stringBuilder = new SpannableStringBuilder(); stringBuilder.append(hostUrl).append("/index.android.bundle?platform=android&dev=true&CRNModuleName=CommentList&CRNType=1&isHideNavBar=YES&HotelBaseInfo=").append(encode);
CtripH5Manager.openUrl(context, stringBuilder.toString(), "");
这里显示的关键是
String str = new org.json.JSONObject(commentMap).toString()
转化为 json 字符串。