Inoltre ho eseguito il Parse.enableLocalDatastore() in dispatch_async - ho ancora l'avviso.Parse.enableLocalDatastore() - Avviso: è in esecuzione un'operazione di lunga durata sul thread principale
Anche quando aggiungo un punto di interruzione simbolico warnParseOperationOnMainThread la dose non rompere
qui è il frammento di codice dall'applicazione delegato
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// Override point for customization after application launch.
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)) {
Parse.enableLocalDatastore()
Parse.setApplicationId("XXX", clientKey: "YYY")
PFAnalytics.trackAppOpenedWithLaunchOptionsInBackground(launchOptions, block: nil)
var defaultACL = PFACL()
defaultACL.setPublicReadAccess(true)
defaultACL.setPublicWriteAccess(false)
PFACL.setDefaultACL(defaultACL, withAccessForCurrentUser:true)
CAUser.registerSubclass()
NSLog("App finish loading")
dispatch_async(dispatch_get_main_queue()){
() -> Void in
// any UI updates need to happen in here back on the main thread
}
}
return true
}
Richiesta
grato se qualcuno evidenziare a me, Cosa manca per evitare questo messaggio di avviso?
stesso qui. credo che questo sia un bug. – alix
forse provare priorità priorità? Questo avviso è dovuto a un codice in esecuzione sul thread principale quando non dovrebbe, e quindi al blocco dell'interfaccia utente. Se sei sicuro al 100% che accada qui e non da qualche altra parte, prova quello. Altrimenti non lo so, sembra tutto a posto. D'altra parte, Parse esplicitamente ha detto in una risposta che questi avvisi sono solo avvertimenti, e se la tua app funziona senza problemi comunque, puoi tranquillamente ignorarli. –
Grazie per il tuo suggerimento, ho provato a cambiare la priorità in background e ha ancora lo stesso avviso. Per quanto riguarda il 100% di questa linea è la ragione per cui ho commentato e decommentato la riga per assicurarmi e anche io faccio una linea di stampa prima e dopo, inoltre aggiungo un punto di interruzione su quella linea, quindi sono sicuro che questa è la causa di questo avvertimento. ho letto per ignorare l'errore, tuttavia preferirei se posso evitarlo - sarà meglio. Grazie – gfekri