相关疑难解决方法(0)

objc_setAssociatedObject上的EXC_BAD_ACCESS与-weak_library /usr/lib/libSystem.B.dylib链接器标志

我有一个用链接器标志EXC_BAD_ACCESS调用的时候objc_setAssociatedObject:-weak_library /usr/lib/libSystem.B.dylib链接器标志.

我绝对需要链接器标志因为这个,有人知道一个解决方法吗?

(我也遇到了崩溃,dispatch_async但我可以解决这个问题...另外,我正在我的应用程序上构建iOS 4兼容的iOS 3兼容功能)

编辑:随着更多的研究,我发现了这个这个问题,但没有更多答案......

iphone exc-bad-access weak-references ios

7
推荐指数
1
解决办法
4240
查看次数

复制属性和Block_copy(myBlock)/ [myBlock copy]

考虑:

typedef void (^select_block_t)(UIView *) ;

(1) @property (copy, nonatomic) select_block_t        myBlockProperty ;
(2) @property (strong, nonatomic) select_block_t      myBlockProperty ;
(3) @property (assign, nonatomic) select_block_t      myBlockProperty ;
Run Code Online (Sandbox Code Playgroud)

和:

(A) self.myBlockProperty = ^(UIView *) {NSLog(@"Hi");} ;
(B) self.myBlockProperty = [^(UIView *) {NSLog(@"Hi");} copy] ;
Run Code Online (Sandbox Code Playgroud)

我试图了解映射哪个属性声明与块复制语义的正确方法是什么

我看到的例子在这里SO这将有利于[1:B]

但后来我对"复制"操作多么冗余感到困惑.我有限的理解是[1:A]应该是正确的,因为我希望在分配属性时复制块一次,而不是在创建块时再复制一次,然后在属性赋值时再次复制.

根据我的理由,[3:B]也有意义.那么,我有什么误解?

block objective-c ios automatic-ref-counting

7
推荐指数
1
解决办法
808
查看次数

iPhone模拟器在应用程序启动时崩溃

升级到Lion和XCode 4.1之后,我遇到了一些iPhone模拟器问题.当我启动4.0,4.1或4.2(我从Time Machine恢复)的模拟器时,我EXC_BAD_ACCESS立即得到一个错误:

0x003c23dc  <+0012>  call   0x3c23e1 <__springboard_unimplemented+17>
Run Code Online (Sandbox Code Playgroud)

在4.3上,我也立即得到一个EXC_BAD_ACCESS错误,objc_msgSend从我可以看出,它在应用程序启动之前就已经发生了.

我试过清理目标无济于事,NSZombieEnabled似乎没有帮助.

该应用程序在我的iPhone上完美运行.

编辑:卸载并重新安装Xcode,没有帮助.一个空白的新项目运行良好.设置一些断点之后,看起来它在main.m中的这行上失败了(这不是很有帮助):

    int retVal = UIApplicationMain(argc, argv, nil, nil);
Run Code Online (Sandbox Code Playgroud)

编辑:根据要求,这里的线程适用所有bt满:

对于4.2模拟器,重复约5800次,每次使用不同的内存地址:

#0  0x003c23dc in __springboard_unimplemented ()
No symbol table info available.
Run Code Online (Sandbox Code Playgroud)

接下来是这样的东西:

#5817 0x003c2548 in __springboard_unimplemented ()
No symbol table info available.
#5818 0x003cacd1 in kill$UNIX2003 ()
No symbol table info available.
#5819 0x90bdbc0c in abort ()
No symbol table info available.
#5820 0x003c2548 in __springboard_unimplemented ()
No symbol table info available.
#5821 0x003cacd1 …
Run Code Online (Sandbox Code Playgroud)

iphone xcode objective-c ios ios-simulator

4
推荐指数
1
解决办法
3473
查看次数