ios CI/CD 持续集成 组件化专题三 IOS打包Bundle与加载Bundle中的图片

一、 读取 BundlePath

  • (NSString *)sdkPodsBundlePath {

NSBundle *bundle = [NSBundle bundleForClass:[self class]];

NSString *bundlePath = [bundle pathForResource:kSDKName ofType:@"bundle"];

return bundlePath;

}

二 、读取bundle

  • (NSBundle *)sdkBundle {

NSString *sdkPodsBundlePath = [QSGetResourceTool sdkPodsBundlePath];

NSBundle *bd = nil;

// SDK 自己使用时

if (sdkPodsBundlePath) {

NSBundle *bundle = [NSBundle bundleForClass:[self class]];

NSString *bundlePath = [bundle pathForResource:kSDKName ofType:@"bundle"];

NSBundle *bd = [NSBundle bundleWithPath:bundlePath];

} else {

bd = [NSBundle bundleForClass:[self class]];

}

return bd;

}

三、 读取bundle里面的图片

// 读取framework下的图片资源

  • (UIImage *)qs_imageSDKNamed:(NSString *)name {

NSBundle *bd = [QSGetResourceTool sdkBundle];

UIImage *image = [UIImage imageNamed:name inBundle:bd compatibleWithTraitCollection:nil];

return image;

}

四、 使用

UIImage * image = [UIImage qs_imageSDKNamed:@"xxx"];

相关推荐
天选上班打工人1 小时前
苹果手机如何录屏?IOS 自带工具与嗨格式录屏大师 APP 详解
ios·智能手机
科技探秘人3 小时前
如何在iPad上用Chrome实现无痕浏览
chrome·ios·ipad
刘小哈哈哈21 小时前
iOS 提取图片的主题色,并支持灵活提取
macos·ios·cocoa
程序员大侠1 天前
JSPatch和JSBridge 的区别
ios·热更新
奇客软件1 天前
如何像专家一样修复任何 iPhone 上的“iPhone 已禁用”错误
数据库·深度学习·ios·电脑·笔记本电脑·iphone·学习方法
Zender Han2 天前
如何在 Flutter 中实现可拖动的底部弹出框
android·flutter·ios
GEEKVIP2 天前
如何从 Mac 上清空的垃圾箱中恢复已删除的文件
windows·macos·ios·智能手机·电脑·笔记本电脑·iphone
文件夹__iOS2 天前
[SwiftUI 开发] @dynamicCallable 与 callAsFunction:将类型实例作为函数调用
ios·swiftui·swift
鸽芷咕2 天前
【C++报错已解决】std::ios_base::sync_with_stdio
开发语言·c++·ios·bug
人工智能的苟富贵2 天前
全面解析 iOS 和 Android 内嵌 H5 页面通信与交互实现方案
android·javascript·ios·交互