插件开发常见问题
1、用官方教程页面提供的插件资源环境,制作了DEMO,然后使用真机调试,是可以使用的。但是将源代码集成到AppCan基础开发工程,生成了一个.a文件,按照文档的方法打包成插件包, 然后在线生成ipa安装包,结果无法调用
解决方式
需要判断插件是否上传成功并勾选,然后判断插件是否被打进了ipa中:把.ipa改成.zip,解压, payload文件夹里面有个包,把那个包再解压出来,看下里面的plugin.xml,如果没有你的插件,那么是插件包里的plugin.xml或者info.xml写错了;如果有,请确认下前端的代码是否有问题
2、 安卓百度地图插件使用打开地图总是报错
解决方式
如百度插件API文档提示,新百度地图插件暂时不能在IDE中正常测试,否则会报错;还有一种情况,证书是不是更换过,导致key失效,请重新申请key,重新自定义插件上传使用(1)、安卓检查上传的自定义百度插件填写的key与百度开放平台申请的key是否一致,请确认;安卓需要用到证书和自定义包名(打包时填写,不填写打开地图时显示空白,没有地图数据),必须保持一致,请确认(2)、ios报错,key配置问题,请再次确认插件填写key是否与百度地图key一致
注意:申请百度key时,打包ios证书必须上传,有时申请ios百度key,如果证书变了,打开百度地图也会报错,务必确保申请用的ios证书和打包用的证书必须一致
(3)、百度地图打开只显示地图框,不显示地图数据,那需要您确认在申请百度key时用的数字签名sha1值,是不是和你打包时用的证书sha1值一致,默认的appcan证书的数字签名sha1值是:49:3E:52:87:09:E1:B4:D2:B8:FF:12:6E:2C:C8:40:6D:3B:5E:4D:BB,如果你使用的是其他证书(AppCan平台提供一键生成证书功能,但需要您下载这个证书获取sha1值,获取详见文档),需要重新获取sha1值,根据这个sha1值获取百度的key
3、 用uexDevice获取不同苹果设备型号对照表
解决方式
可参考CONSTENT 文档Device Info Types参数值uexDevice.getInfo(17)获取,并通过其回调cbGetInfo返回
if ([platform isEqualToString:@"iPhone1,1"]) return @"iPhone 2G (A1203)";
if ([platform isEqualToString:@"iPhone1,2"]) return @"iPhone 3G (A1241/A1324)";
if ([platform isEqualToString:@"iPhone2,1"]) return @"iPhone 3GS (A1303/A1325)";
if ([platform isEqualToString:@"iPhone3,1"]) return @"iPhone 4 (A1332)";
if ([platform isEqualToString:@"iPhone3,2"]) return @"iPhone 4 (A1332)";
if ([platform isEqualToString:@"iPhone3,3"]) return @"iPhone 4 (A1349)";
if ([platform isEqualToString:@"iPhone4,1"]) return @"iPhone 4S (A1387/A1431)";
if ([platform isEqualToString:@"iPhone5,1"]) return @"iPhone 5 (A1428)";
if ([platform isEqualToString:@"iPhone5,2"]) return @"iPhone 5 (A1429/A1442)";
if ([platform isEqualToString:@"iPhone5,3"]) return @"iPhone 5c (A1456/A1532)";
if ([platform isEqualToString:@"iPhone5,4"]) return @"iPhone 5c (A1507/A1516/A1526/A1529)";
if ([platform isEqualToString:@"iPhone6,1"]) return @"iPhone 5s (A1453/A1533)";
if ([platform isEqualToString:@"iPhone6,2"]) return @"iPhone 5s (A1457/A1518/A1528/A1530)";
if ([platform isEqualToString:@"iPhone7,1"]) return @"iPhone 6 Plus (A1522/A1524)";
if ([platform isEqualToString:@"iPhone7,2"]) return @"iPhone 6 (A1549/A1586)";
if ([platform isEqualToString:@"iPod1,1"]) return @"iPod Touch 1G (A1213)";
if ([platform isEqualToString:@"iPod2,1"]) return @"iPod Touch 2G (A1288)";
if ([platform isEqualToString:@"iPod3,1"]) return @"iPod Touch 3G (A1318)";
if ([platform isEqualToString:@"iPod4,1"]) return @"iPod Touch 4G (A1367)";
if ([platform isEqualToString:@"iPod5,1"]) return @"iPod Touch 5G (A1421/A1509)";
if ([platform isEqualToString:@"iPad1,1"]) return @"iPad 1G (A1219/A1337)";
if ([platform isEqualToString:@"iPad2,1"]) return @"iPad 2 (A1395)";
if ([platform isEqualToString:@"iPad2,2"]) return @"iPad 2 (A1396)";
if ([platform isEqualToString:@"iPad2,3"]) return @"iPad 2 (A1397)";
if ([platform isEqualToString:@"iPad2,4"]) return @"iPad 2 (A1395+New Chip)";
if ([platform isEqualToString:@"iPad2,5"]) return @"iPad Mini 1G (A1432)";
if ([platform isEqualToString:@"iPad2,6"]) return @"iPad Mini 1G (A1454)";
if ([platform isEqualToString:@"iPad2,7"]) return @"iPad Mini 1G (A1455)";
if ([platform isEqualToString:@"iPad3,1"]) return @"iPad 3 (A1416)";
if ([platform isEqualToString:@"iPad3,2"]) return @"iPad 3 (A1403)";
if ([platform isEqualToString:@"iPad3,3"]) return @"iPad 3 (A1430)";
if ([platform isEqualToString:@"iPad3,4"]) return @"iPad 4 (A1458)";
if ([platform isEqualToString:@"iPad3,5"]) return @"iPad 4 (A1459)";
if ([platform isEqualToString:@"iPad3,6"]) return @"iPad 4 (A1460)";
if ([platform isEqualToString:@"iPad4,1"]) return @"iPad Air (A1474)";
if ([platform isEqualToString:@"iPad4,2"]) return @"iPad Air (A1475)";
if ([platform isEqualToString:@"iPad4,3"]) return @"iPad Air (A1476)";
if ([platform isEqualToString:@"iPad4,4"]) return @"iPad Mini 2G (A1489)";
if ([platform isEqualToString:@"iPad4,5"]) return @"iPad Mini 2G (A1490)";
if ([platform isEqualToString:@"iPad4,6"]) return @"iPad Mini 2G (A1491)";
if ([platform isEqualToString:@"i386"]) return @"iPhone Simulator";
if ([platform isEqualToString:@"x86_64"]) return @"iPhone Simulator";
iOS 微信支付(uexWeiXin.startPay)接口FAQ
1、 为什么调用支付接口没有反应?
解决方式
请先调用registerApp接口向微信终端注册本应用
2、 为什么调用支付接口后可以进入微信界面但没有支付界面弹出?
解决方式
检查传入的timestamp参数是否异常
3、为什么调用支付接口后可以进入微信界面却又马上退出回到当前app?
解决方式
检查传入的sign参数是否异常
4、为什么进行支付操作后cbStartPay回调异常?
解决方式
3.0.15版本插件已经修复此问题,请用最新版插件
5、 为什么调用支付接口闪退?
解决方式
检查所有传入的参数是否全是String字符串类型
解决方式
3.0.15版本插件已经修复此问题,请用最新版插件
6、 百度地图iOS打开地图既不报错也不显示数据,网络正常,如何解决
解决方式
检查下打包使用的iOS证书与申请的iOS百度地图key用的iOS证书是不是一致
调用插件接口,前端代码中写到的res://这个协议头对应的路径是什么
res://路径对应的安卓路径和iOS路径都是widget/wgtRes/,这个是手动在源码中创建的一个wgtRes文件夹,把res下的文件放到wgtRes文件里
未解决问题?到开发者社区提问试试吧 !点击提问