2012-03-19 11 views
12

Sto cercando di capire qualcosa, e sono sicuro che è molto semplice per alcune persone.Android eclipse startManagingCursor Deprecato ma desidera supportare versioni API meno recenti?

Ho letto ovunque che il metodo startManagingCursor è deprecato e dovresti utilizzare la classe CursorLoader. Ma questo significa che dovresti usare la classe CursorLoader anche per le app che supportano i livelli API < 11? O sta dicendo che se intendi supportare solo Honeycomb e UP, allora usa cursorLoader?

Non riesco a importare la classe del caricatore di cursori con api 4, quindi presumo che l'uso di CursorLoader non si applichi fino ad Android 3.0+, ma qualcuno può verificare per me per favore?

Grazie

risposta

21

Ho letto ovunque che il metodo startManagingCursor è deprecato e si dovrebbe utilizzare la classe CursorLoader.

Se siete disposti a ereditare da FragmentActivity, è possibile utilizzare l'applicazione Loader quadro nel pacchetto di sostegno Android, andare tutta la strada fino ad Android 1.6.

Detto questo, "deprecato" in Android di solito significa "continueremo a sostenerlo, ma pensiamo che ci siano soluzioni migliori". Puoi certamente usare startManagingCursor() su API Level 11+. Tuttavia, i problemi con i cursori gestiti (in particolare il fatto che siano requery() in un'attività che si riavvia nel thread dell'applicazione principale) sono ancora presenti nelle versioni Android precedenti e più recenti.

Ma ciò significa che è necessario utilizzare la classe CursorLoader anche per le app che supportano i livelli API < 11?

Certamente, e, a parità di condizioni, probabilmente dovresti. Tuttavia, tutto il resto è raramente uguale e il requisito FragmentActivity potrebbe essere un problema per te.

Se stai sviluppando una nuova applicazione, oggi dovresti pensare ai frammenti fin dall'inizio, nel qual caso useresti comunque FragmentActivity e quindi l'utilizzo di Loader non dovrebbe essere un problema.

non sembrano essere in grado di importare la classe cursore del caricatore con api 4

L'applicazione Android del pacchetto di sostegno di Loader lavori su API di livello 4 e superiori.

+0

Grazie. Risposta semplice e precisa! Vorrei poter trovare questa informazione chiaramente esposta nella documentazione. – Nick