私はDeviceMotionクラスでコーディングを開始しています。 Appleのdocumenationに従った後、私は次のようにありますiPhone Motion - EXC不正アクセス
- (void)viewDidLoad {
[super viewDidLoad];
myMM = [[CMMotionManager alloc] init];
myMM.deviceMotionUpdateInterval = 1.0/30.0;
theQ = [[NSOperationQueue currentQueue] retain];
motionHandler =^(CMDeviceMotion *motionData, NSError *error) {
if (motionData.rotationRate.z > 5.5 || motionData.rotationRate.z < -5.5) {
NSLog(@"Rotation of Z."); // Reference A
}
};
-(IBAction)toggleClick{
NSLog(@"toggle");
if(myMM.gyroAvailable){
if(myMM.deviceMotionActive){
NSLog(@"Stopping Motion Updates..");
[myMM stopDeviceMotionUpdates];
} else {
NSLog(@"Starting Motion Updates..");
[myMM startDeviceMotionUpdatesToQueue:theQ withHandler:motionHandler];
}
}
else {
NSLog(@"No motion available. Quit!");
}
このコードは正常に動作します、しかし、私は "の代わりにのNSLogを除く任意のコード(整数をインクリメントするような単純なも、何かを)やりたいとき参照A '、コンソールにEXEC Bad Accessが表示されます。
私は周りを見回しました。私が見つけたのは、メモリリークだということです。誰でも何が起こっているのか知っていますか?そうでない場合は、どうすればわかりますか?私はインストゥルメンタルではかなり経験がありませんが、私が正しい方向を指していれば、大変感謝しています。
あなた、先生は、天才です。私はコピーして貼り付け、完璧に働いた。私は投票するだろうが、私は13人しかいない:(..ありがとう、そして幸せな感謝祭。 –