2014-12-12 11 views
8

In docs Parse, si afferma chiaramente che [Parse enableLocalDatastore]; dovrebbe essere chiamato prima [Parse setApplicationId:clientKey:];: https://parse.com/docs/ios_guide#localdatastore-find/iOSAbilitazione archivio dati locale su Parse chiamando enableLocalDatastore prima dell'inizializzazione tiri eccezione

Tuttavia, nel mio caso, viene generata immediatamente un'eccezione:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'You have to call setApplicationId:clientKey: on Parse to configure Parse.'

Se sposto il codice da eseguire dopo [Parse setApplicationId:clientKey:]; I don' si ottiene un errore, ma negozio locale non sembra funzionare.

Sembra che i documenti di Parse siano fuorvianti. Qualcuno ha una soluzione?

+0

Hai ragione che c'è qualcosa di sbagliato c'è. Sembra che devi chiamare 'setApplicationId: clientKey:' prima di chiamare 'enableLocalDatastore', altrimenti vedrai questa eccezione. Tuttavia, l'archivio dati locale funziona per me. – rickerbh

+0

I miei risultati sono gli stessi di @rickerbh – Carl

risposta

2

Questo dovrebbe essere risolto nella nuova versione v1.6.1 dell'SDK analisi.

5

Ho inserito il [Parse enableLocalDatastore]; dopo il [Parse setApplicationId:clientKey:]; e ho ricevuto altri errori. Ma questo è un altro errore perché non è possibile utilizzare insieme il Datastore locale e il Cache Policy. Quando ho rimosso i metodi di Cache Policy, tutto funziona correttamente. Quindi, non so se si tratta di un errore di documentazione, ma devi inserire questo codice dopo il.

+0

Sì, probabilmente un errore di documentazione. Strano però che venga esplicitamente notato in diversi punti della documentazione. –

+0

Ho anche aperto un problema in facebook, e hanno riferito che rilasceranno presto una correzione. –

+0

@ HenriqueGüttlerMorbin è meglio utilizzare localDataStore o implementare cachePolicy autonomamente? – SamYoungNY

0

Rimuovere la politica della cache sulla query.

L'errore non è abbastanza descrittivo, ma ciò che significa è "la politica della cache non è consentita quando Pinning è abilitato". Continua a abilitare il blocco prima di impostare l'ID applicazione e la chiave client.

Cambiamento dal

query.cachePolicy = PFCachePolicy.CacheThenNetwork 

Per questo

query.fromLocalDatastore() 
Problemi correlati