微信开发通过H5获取手机IMEI号,能行的通吗?怎么样获取
发布网友
发布时间:2022-04-27 10:16
我来回答
共2个回答
热心网友
时间:2023-04-23 15:53
并不能获得。
如果是在app内加载页面,可以让后端在加载页面的时候传递到前端,也可以由app内置js协议获取。
如果是在微信里,可以考虑用微信的唯一标识openId
概述
IMEI(International Mobile Equipment Identity)是国际移动设备识别码的缩写。俗称“手机串号”、“手机串码”、“手机序列号”,用于在GSM移动网络中识别每一部独立的手机,相当于手机的身份证号码。IMEI码适用于GSM和WCDMA制式的移动电话和铱星卫星电话,而CDMA手机采用MEID码,与IMEI码有所区别。全球每部通过正规渠道销售的GSM手机均有唯一的IMEI码。IMEI码由GSMA协会统一规划,并授权各地区组织进行分配,在中国由工业和信息化部电信终端测试技术协会(TAF)负责国内手机的入网认证,其他分配机构包括英国BABT、美国CTIA等。
简介
国际移动设备识别码(IMEI:International Mobile Equipment Identification Number)是区别移动设备的标志,储存在移动设备中,可用于监控被窃或无效的移动设备。IMEI可用移动终端设备通过键入"*#06#"查得(不同厂商的手机所需输入的内容不同,同一厂商不同手机所需输入的内容也可能不同)。其总长为15位,每位数字仅使用0~9的数字。
IMEI分配
IMEI码由GSMA协会统一规划,并授权各地区组织进行分配,在中国由工业和信息化部电信终端测试技术协会(TAF)负责国内手机的入网认证,其他分配机构包括英国BABT、美国CTIA等。
热心网友
时间:2023-04-23 15:53
h5调用方法如下:
代码:注意区分前后端的变量大小写。
@RequestMapping(value = "/index")
public Model index(@RequestParam(value = "openid", required = true) String openid ,Model model,HttpServletRequest request) throws Exception{
logger.info("************openid***********为:"+openid);
//获取prepayid
Map<String ,String > map=new HashMap<String,String>();
WeiXinConfig wcf=weiXinBaseService.getWeiXinConfig();
String nonceStr=UUID.randomUUID().toString().substring(0, 32);
oauthService.shareFactory(request);
String appid=wcf.getAppid();
long timestamp = System.currentTimeMillis() / 1000;
map.put("appid", appid );
map.put("mch_id", WebConfig.get("pay.mch_id"));
map.put("nonce_str",nonceStr);
map.put("body", WebConfig.get("pay.body"));
map.put("out_trade_no", payWxUtil.orderNum());
map.put("total_fee", WebConfig.get("pay.price"));
map.put("spbill_create_ip",request.getRemoteAddr());
map.put("notify_url", WebConfig.get("hostAddress")+request.getContextPath()+"/babyShow/payInfo/info");
map.put("trade_type", "JSAPI");
map.put("openid", openid);
String paySign=SignUtil.getPayCustomSign(map,WebConfig.get("pay.key"));
map.put("sign",paySign);
String xml= CommonUtil.ArrayToXml(map);
String prepayid= payWxUtil.getPrepayid(xml);
logger.info("prepareid*****************************="+prepayid);
//封装h5页面调用参数
Map<String ,String > signMap=new HashMap<String ,String >();
signMap.put("appId", appid);
logger.info("appId="+appid);
signMap.put("timeStamp", timestamp+"");
logger.info("timeStamp="+timestamp);
signMap.put("package", "prepay_id="+prepayid);
logger.info("package="+"prepay_id="+prepayid);
signMap.put("signType", "MD5");
logger.info("singType="+"MD5");
signMap.put("nonceStr", nonceStr);
logger.info("nonceStr="+nonceStr);
model.addAttribute("paytimestamp", timestamp);
model.addAttribute("paypackage", "prepay_id="+prepayid);
model.addAttribute("paynonceStr", nonceStr);
model.addAttribute("paysignType", "MD5");
String paySign2=SignUtil.getPayCustomSign(signMap,WebConfig.get("pay.key"));
model.addAttribute("paySign",paySign2 );
logger.info("paySign="+paySign2);
return model;
}
以上代码获取openid需要根据网页授权来获取。