由于Apple要求提交审核的应用程序必须从2016年6月1日起支持仅支持IPv6的网络,因此我正在检查是否需要替换我的应用中的某些API /库.但是我对网络和一些相关方面知之甚少,因此我无法对此有明确的答案,并希望寻求帮助.
关于Apple提供的支持IPv6 DNS64/NAT64网络的文档,它指出应用程序应该没问题,如果符合以下情况则无需执行更新:
您正在使用的高级网络API比如写一个客户端应用程序NSURLSession和CFNetwork的框架,你的名字连接
通过这个我把它作为2个标准:
所以这里的问题是:
据我所知,NSURLConnection基于CFNetwork,这是否意味着如果我的应用程序使用NSURLConnection,我也会没事的?(我在上面的文档中看到NSURLConnection在这张图片中也有提及,但是我不太确定这一点,因为NSURLConnection有点老了?似乎我找不到提及IPv4和IPv6支持的文件.)
根据标准"按名称调用",这是否意味着无论我使用的是NSURLSession还是NSURLConnection,如果我碰巧通过IPv4地址调用或访问某些资源/ API,会发生什么不好的事情?(我已经做了一些研究,根据我的理解,像iOS 9+的iOS设备这样的客户端将始终使用合成的IPv6地址访问IPv4服务器,因此如果我通过IPv4地址调用,客户端将无法访问资源?)
谢谢你的帮助!
在某些情况下,即使有足够的空间, UILabel 似乎也会为新行带来额外的单词,例如,
如果再加一个词,
即使我强制标签的宽度变成如下所示,它仍然会将包含“c”的单词移动到下一行,
我已经尝试扭曲 UILabel 的配置,但似乎它的行为是相同的,除非我将换行模式设置为字符换行,以下是上述情况的配置,
和约束(在前两种情况下,尾随 ),
这种特殊行为是否有任何原因,我可以解决这个问题吗?以这种方式让那个空间清空看起来很奇怪。
目前我们的项目正在利用通过 SPM 添加的库,其中包含一些禁止的符号,例如RxTest,因此在将构建上传到 AppStore Connect 之前,我们必须在Target->中手动删除这些库Frameworks and Libraries,但这样我们就无法使上传进入自动化过程。
有什么方法可以将这些库配置为仅嵌入某些构建配置中,例如Debug但不嵌入Release?或者为了达到相同的目标,是否有任何命令可以删除特定的库?
大家好,我已经调试了这个问题很长一段时间但到目前为止没有运气.我在这里迷失了,并且不知道造成这次崩溃的原因以及如何解决它.如果有人能为我提供一些帮助,我将非常感激,非常感谢!
我准备了一个示例项目来在GitHub上演示这个问题.
方案如下:
有两个视图控制器,即根视图和模态视图,每个视图控制器都有一个自定义滚动视图(即类SubScorllView)作为子视图,模态视图有一个用于关闭模态视图的按钮.
滚动视图是UIScrollView的子类,每个子类都有相应的委托协议,它们的类层次结构如下:
UIScrollView的
∟SuperScrollView
.....∟SubScrollView
该应用程序以非常简单的方式启动和运行,在AppDelegate的didFinishLaunchingWithOptions中:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.window.backgroundColor = [UIColor blackColor];
RootViewController * rootVC = [[RootViewController alloc] init];
self.navVC = [[UINavigationController alloc] initWithRootViewController:rootVC];
self.navVC.navigationBarHidden = TRUE;
self.window.rootViewController = self.navVC;
[self.window makeKeyAndVisible];
ModalViewController *modalVC = [[ModalViewController alloc] init];
[self.navVC presentViewController:modalVC animated:YES completion:nil];
return YES;
}
Run Code Online (Sandbox Code Playgroud)
并且视图是从xib文件加载的,滚动视图的委托也在其中设置,并且有一些关于启动和设置滚动视图子类的委托的方法的覆盖.
当我通过单击模态视图中的"关闭"按钮关闭模态视图时出现问题,单击该按钮时,会发生以下情况:
- (IBAction)didPressedCloseButton:(id)sender {
self.subScrollView.delegate = nil;
[self dismissViewControllerAnimated:YES completion:nil];
}
Run Code Online (Sandbox Code Playgroud)
该应用程序崩溃在以下部分SuperScrollView:
- (void)setDelegate:(id<SuperScrollViewDelegate>)delegate …Run Code Online (Sandbox Code Playgroud)