小编Dav*_*ung的帖子

适用于 iOS 的 MultipeerConnectivity 框架中的会话加密

我正在研究 iOS 多人框架,我对它非常满意。我正在共享一些敏感数据,因此必须进行加密。当我们创建会话时,我们会得到三个选项:

self.session = [[MCSession alloc] initWithPeer:self.myPeerID
                              securityIdentity:nil 
                          encryptionPreference:MCEncryptionRequired];
Run Code Online (Sandbox Code Playgroud)
  1. MCEncryptionNone
  2. MCEncryptionOptional
  3. MCEncryptionRequired

    我阅读了 Apple 指南,但找不到太多相关信息。如果我通过了MCEncryptionRequired,有人知道它的加密方式是什么吗?谢谢。

security encryption objective-c ios multipeer-connectivity

5
推荐指数
1
解决办法
561
查看次数

是否可以更改构建号.归档iOS项目后?

我提交给iTunes Connect for Testflight beta测试版的iOS应用程序版本几乎已过期.AFAIK为了延长30天的试用期,我需要再次提交,但增加的构建版本.由于我存档的代码库很久以前,我不想将代码库还原到该版本并再次存档.我只是想知道是否有任何可能的方法来更改已归档的iOS项目的内部版本号.我想再次提交版本1.3.6(1.3.6.8,已经在iTunes Connect中进行beta测试),如下所示.

在此输入图像描述

ios testflight

5
推荐指数
1
解决办法
3753
查看次数

无效时,NSTimer在Iphone上与EXC_BAD_ACCESS崩溃

我在我的应用程序中设置了两个计时器,每隔几秒重复一次.除非是时间使计时器无效,否则一切正常.当手机被锁定时,我想让这些计时器无效,然后在手机解锁时重新创建它们.

我使用通知来实现何时无效/创建计时器.

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notify_didBecomeActive:) name:UIApplicationDidBecomeActiveNotification object:nil];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(notify_willResigneActive:) name:UIApplicationWillResignActiveNotification object:nil];
Run Code Online (Sandbox Code Playgroud)

这是notify_didBecomeActive方法包含的内容:

clockTicker = [[NSTimer scheduledTimerWithTimeInterval: 1  
                                            target: self  
                                          selector: @selector(showActivity)  
                                          userInfo: nil  
                                           repeats: YES] retain];

alarmTicker = [[NSTimer scheduledTimerWithTimeInterval: CONST_ALARMTIMER  
                                               target: self  
                                             selector: @selector(checkAndLaunchAlarm)  
                                             userInfo: nil  
                                              repeats: YES] retain];
Run Code Online (Sandbox Code Playgroud)

这个notify_willResigneActive方法包含:

if (alarmTicker) {
    [alarmTicker invalidate];
    [alarmTicker release];
    alarmTicker = NULL;
}

if (clockTicker) {
    [clockTicker invalidate];
    [clockTicker release];
    clockTicker = NULL;
}
Run Code Online (Sandbox Code Playgroud)

问题是,当我在第二个计时器上调试这个无效时,我得到了错误.奇怪的是,如果我切换定时器的命令(比如首先使clockTicker失效)..我仍然在第二个定时器上得到错误.

我能做错什么?

谢谢,莱昂纳多

iphone exc-bad-access objective-c nstimer ios

3
推荐指数
1
解决办法
6236
查看次数

Swift nil与Objective-C nil不同

Apple文档提到:

Swift的nil与Objective-C中的nil不同.在Objective-C中,nil是指向不存在的对象的指针.在Swift中,nil不是指针 - 它缺少某种类型的值.任何类型的选项都可以设置为nil,而不仅仅是对象类型

以上知识何时有用?在适用的情况下,编译器会自动将Swift nil转换为Objective-C nil,反之亦然吗?

objective-c swift

0
推荐指数
1
解决办法
3360
查看次数