こんにちは、グローバル変数の値または設定値を取得しようとすると問題が発生します。アプリのライフサイクルのメソッドにあるコード。これapplicationDidEnterBackground
は、呼び出しの状態をリアルタイムで知る必要がある場合に機能しますが、EXC_BAD_ACCESS が生成される場合があります
これは変数宣言@property(nonatomic, copy) NSNumber *calling;
で、これは私の .h ファイルにあります。
これは私の .m 実装ファイルの私のコードです:
__unsafe_unretained typeof(self) weakSelf = self;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
@autoreleasepool
{
while (weakSelf.calling.intValue == 1)
{
callCenter.callEventHandler = ^(CTCall* call)
{
if([call.callState isEqualToString:CTCallStateDisconnected])
{
weakSelf.calling = [[NSNumber numberWithInt:0] copy];//Error EXC_BAD_ACCESS
}
};
}
}
});
ただし、エラーが発生する場合と発生しない場合があります。何か案が?