iOSアプリ(ハング)iPhone 7でフリーズが、私はそれは車の追跡アプリですスウィフト3.上のiOSアプリを開発したシミュレータ
作業。サーバーデータロケーションセット(API解析)からのアニメーション付き地図に表示された車。 私は、アニメーションの時間間隔のためにタイマーを使用しています。 iPhone 7とiPhone 4のためにアプリがハング(凍結)するようになると、デバッグモードで「x iPhoneに接続できません」という問題が発生しました。しかし、Simulatorでうまくいく。
私はそれを解決するために多くを検索します。いくつかの人がスレッドの問題、メモリの問題を言った...しかし、何も私を助けることができます。コードスケルトンは以下の通りです。
@IBAction func submitRecordedAction(_ sender: UIButton){
recordation()
}
func recordation(){
let parameters = [ ---- ] as [String : Any]
loc.getRecordedLocations(para: parameters, success: { (status, msg) in
let poiSearchQue = DispatchQueue(label: "com.poiSearchQue", qos: .utility)
poiSearchQue.async {
self.parsePOI()
}
DispatchQueue.main.asyncAfter(deadline: .now() + 5.0, execute: {
self.recordedDataShow()
})
}, failure: { (msg) in
})
}
func self.recordedDataShow(){
//Calling timer from here according to location array
}
メモリリークによりこの問題が発生する可能性があります。 didReceiveMemoryWarning()にブレークポイントを適用し、アプリケーションがそれに入るかどうかを確認してください –
アプリを実行し、フリーズを待ちます。フリーズを観察したら、一番下のコンソールパネルの一時停止ボタンを押してください。次に、左側のパネルに現在実行中のスレッドが表示されます。これにより、フリーズの原因を知ることができます。 –
あなたはHakikat Singhです。しかし、その解決策は何ですか? –