経由でインストールしたとき私のものが MKPolyline polylineWithCoordinatesクラッシュXcodeの
CLLocationCoordinate2D outline[track.lastGeo -track.firstGeo];
CLLocationCoordinate2D upper = ((CLLocation*)track.locations[track.firstGeo]).coordinate;
CLLocationCoordinate2D lower = ((CLLocation*)track.locations[track.firstGeo]).coordinate;
int count = 0;
for (int i = track.firstGeo; i <= track.lastGeo; i++) {
CLLocation *firstLoc = [track.locations objectAtIndex:i];
outline[count++] = firstLoc.coordinate;
if([firstLoc coordinate].latitude > upper.latitude) upper.latitude = [firstLoc coordinate].latitude;
if([firstLoc coordinate].latitude < lower.latitude) lower.latitude = [firstLoc coordinate].latitude;
if([firstLoc coordinate].longitude > upper.longitude) upper.longitude = [firstLoc coordinate].longitude;
if([firstLoc coordinate].longitude < lower.longitude) lower.longitude = [firstLoc coordinate].longitude;
}
_outline = [MKPolyline polylineWithCoordinates:outline count:count -1];
を初期化するとXcodeを経由して展開されたときに、それが正常に動作しているときではない次のコードが実行されます。 しかし、私は、アドホックiTunes経由でアプリをインストールするとき、それは誰もがそれがある理由を考えることができ
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x40480b3508f648cf
Triggered by Thread: 0
Filtered syslog:
None found
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 MapKit 0x000000018de19484 -[MKMultiPoint _wrapAroundTheDateline:count:] + 108
1 MapKit 0x000000018de195d8 -[MKMultiPoint _setCoordinates:count:] + 184
2 MapKit 0x000000018de195d8 -[MKMultiPoint _setCoordinates:count:] + 184
3 MapKit 0x000000018de13a74 +[MKPolyline polylineWithCoordinates:count:] + 84
でクラッシュ?
- 場所はXcodeのをインストール
- は、私はXcodeで任意のデバッグ/リリースオプションを変更didntはうまく動作しますように存在しない、すべてが、それは別のデバイス上でクラッシュし
- 標準ですが、唯一のアドホック MapKitは、オープンソースではないので
私は
[MKMultiPoint _wrapAroundTheDateline:count:]
が何をするか分からないか、なぜそれがcrashe
EDIT 1
は、それはあまりにも多くのスペースををmallocしようとしているMKMultiPointに沸くそこです。
malloc: *** mach_vm_map(size=2405744640) failed (error code=3)
XCodeの最適化レベルでこれが発生する可能性はありますか?デバッグを実行すると、それが起こっていないので、リリースコードが速度を上げて速度を上げてスピードを上げ、ここで問題を引き起こすのにスペースを利用するのがうんざりです。
私がやっているのは、約1000の座標(多分5キロメートルの実際の長さ)のポリラインを作ることです!
になってしまいました。それはXcodeからの実行と臨時からの実行の大きな違いですので、Xcodeからリリースビルドとして実行することで同じ違いを得ることができますか? – matt
同じ振る舞い、同じクラッシュをしました。 MKPolylineの作成、それに渡されるすべての値は正当です。 – NikkyD
実際にメモリ不足ですか?それはループ本体の周りに自動解放プールを置くのに役立ちますか?新しいアドレスのサニタイザーを使用してみましたか? – matt