1,更新xcode15以后,发现windows栏的devices下iOS系统的手机无法安装打出来的ipa包,
解决办法,在爱思助手上可以直接安装,低版本系统的手机也可以安装,已经反馈到了苹果开发者。
这个是苹果反馈的内容,参考下面三个连接
https://help.apple.com/xcode/mac/current/#/devade83d1d7
https://developer.apple.com/forums/thread/739711
https://developer.apple.com/forums/thread/738892
试过卵用没有,结果用爱思助手装上了,苹果的系统越生越垃圾
2,运行现有的项目,跑起来在iOS12系统崩溃,
解决办法,设置一下Build Settings -> Other Linker Flags -> Add -> -ld64
3,widget运行时报错,及widget适配
widget运行起来显示please adopt containerbackground api,原来iOS17系统给插件加了个属性,不设置还不行,赶紧去给view配置containerBackground属性,
配置完界面显示空白,后来发现是代码配置的地方不对,再加上版本判断就完美了
var body: some WidgetConfiguration {
StaticConfiguration(kind: kind, provider: Provider()) { entry in
if #available(iOSApplicationExtension 17.0, *){
PoetryWidgetView(entry: entry)
.containerBackground(.fill.tertiary, for: .widget)
}else{
PoetryWidgetView(entry: entry)
}
}
.configurationDisplayName("当日班次")
.description("今日班次、班次进度一目了然")
.supportedFamilies([.systemSmall])
.contentMarginsDisabled()
}
结果一运行起来怎么背景图都出现了白边,后来经过百度的指导,我们设置边距有了一个新属性,padding,但是必须在WidgetConfiguration加上一个配置 .contentMarginsDisabled()这样widget适配就完成了。
4,终于可以启动软件了,一打开软件发现我的软件首页背景图为什么会有白边,去查看一下代码,原来背景图设置的Y值不对,原来出现灵动岛的机型获取状态栏的高度不对,明明很高,获取回来就只有44,
+(int)kStatusBarHeight{
CGFloat statusBarHeight=0;
if(@available(iOS13.0,*)){
UIWindow*window=UIApplication.sharedApplication.windows.firstObject;
CGFloat topPadding=window.safeAreaInsets.top;
if(topPadding>0){
statusBarHeight=topPadding;
}else{
statusBarHeight=20;
}
}else{
statusBarHeight=UIApplication.sharedApplication.statusBarFrame.size.height;
}
return statusBarHeight+44;
}
根据自己的需求,改变获取高度的方式