最近在做sdk项目遇到一些问题,在这里做一下遇到的问题总结。
1、创建workspace(引入书友的文章,写的十分详细):(https://www.jianshu.com/p/fc5b7515bac9))
1、在制作framework或者lib的时候,如果使用了category,则需要再主工程中 other linker flags添加两个参数 -ObjC 、-all_load.
2、SDK本身没有bundleID,所以只能使用微信的H5支付,因为不熟悉导致的无法唤起支付,配置redirect_url和Referer,redirect_url指向的链接中执行JS通过scheme唤起app或者用Universal Link唤起。
3、静态库引入支付宝支付的Alipay.framework,拖入静态库不勾选targe,build setting中设置search path。最后将两个framework都提供给主工程。实现静态库嵌套使用。
4、framework中访问bundle资源文件,使用
NSString *bundlePath = [[NSBundle mainBundle].resourcePath stringByAppendingPathComponent:@"CYX_Source.bundle"];
NSBundle *bundle = [NSBundle bundleWithPath:bundlePath];
NSString *img_path = [bundle pathForResource: imgName ofType:type];
return [UIImage imageWithContentsOfFile:img_path];
5、实现只提供一个ipa,多子渠道分发(静态库),更改资源文件中的内容Info.plist,或者bundle文件,重新签名
6、重签:来源地址(https://www.jianshu.com/p/adf0d077262f)
解压缩ipa — 解压缩— 如果需要修改文件则替换文件 — 拷贝证书文件到桌面— 安装Homebrew —下载fastlane — 之后的步骤如下
fastlane地址( https://github.com/fastlane/fastlane)
···1、在终端输入fastlane sigh resign ipa路径,回车
···ipa路径=>把要签名的ipa文件(路径、包名不要有中文)拖到终端窗口上,即可快速获取
···2、填写Signing Identity:第一步中脚本会列出电脑中的证书,选择要用的证书的SHA-1即可
···如:27AF89640E0F32910815581CHB8L8281C71E8EEC8。完成后回车
···3、把项目的配置文件.mobileprovision文件(第二步中的文件)拖到终端窗口上,回车
···4、好了,resign脚本会自动更改bundel id,签名并重新打包。
···完成后提示Successfully signed,新生成的包会自动替换原有文件。
···5、使用iTools等安装应用,进行调试
(记录有点杂乱,有需要了解的可以留言)
网友评论