Frammenti deprecato in Android P

Stavo guardando il documentazione e ho trovato questo

Questa classe è stata sconsigliata a livello API P.

Perché sono frammenti deprecato in android P?

  • Quelli che ho downvoted/considerando downvote, potete anche dare un motivo valido? Penso che si tratti di un autentico questione e in grado di fornire tutti noi con alcune significative risposte.
  • Domande per ragioni di fare qualcosa di senso solo se si chiedi a quello che fa. In questo caso devi chiedere a Google.
  • Ha ancora senso usare Frammenti nel 2018, ora che solo la realizzazione del servizio di assistenza è operativo? Cosa usare al posto?
  • downvoters sono nemici. Essi non possono spiegare il loro comportamento, hanno appena vedi regole di COSÌ (che sono illogici), poi segnare con svantaggi e chiedo ai moderatori di chiudere o rimuovere una domanda (e a volte la risposta giusta).
  • almeno, di alcune librerie di utilizzare frammenti senza supporto.v4. Nuovi progetti che abbiamo utilizzato anche loro. Anche COME aggiunge frammenti di default (con File > Nuovo > Frammento).
  • I rappresentanti di Google sono la lettura e l’interazione con Android a questioni attinenti COSÌ, quindi non è il forum giusto.
  • Qualsiasi prova tht interagiscono con questo tipo di domande? Non l’ho mai visto…
  • vedere Doug su stackoverflow.com/q/36487971/253468; detto questo non c’è alcuna garanzia che ti danno informazioni preziose 🙁

 

4 Replies
  1. 23

    La riscrittura in Libreria di Supporto 27.1.0

    Ian medio post (28 febbraio 2018) ci dà una spiegazione. Egli è il Framework Android Developer di Google.

    Loader nella Libreria di Supporto 27.1.0

    Per Support Library 27.1.0, ho riscritto le parti interne di LoaderManager, la classe di alimentare la Caricatori API e ho voluto spiegare il ragionamento dietro e cosa aspettarsi per il futuro.

    Caricatori e Frammenti, a la storia

    Dall’inizio, i Caricatori e i Frammenti sono stati abbastanza strettamente collegate tra loro a livello dell’anca. Questo significa che un sacco di codice in FragmentActivity e Frammento di erano lì per sostenere i Caricatori, nonostante il fatto che ci sono effettivamente indipendenti. …

    Che cosa è cambiato in 27.1.0

    Con 27.1.0, il tecnico del debito di Caricatori è stato notevolmente ridotto: …

    Nota: Ovviamente, queste modifiche si applicano solo per Libreria di Supporto Caricatori. Se si utilizza il framework Android Caricatori, si prega di passare per la Libreria di Supporto Caricatori più presto possibile. Non ci sono correzioni di bug o miglioramenti previsti per il quadro Loader Api.

    Sembra che il codice in Fragment e FragmentActivity è stato rielaborato al fine di rendere i Caricatori di una dipendenza opzionale.

    Secondo le note di rilascio, la nuova implementazione è basata su Lifecycle.

    Importanti Modifiche

    L’implementazione di Caricatori è stato riscritto per utilizzare Ciclo di vita.

    Componenti Dell’Architettura

    In Libreria Di Supporto 26.1.0, Fragment e FragmentActivity ha adottato Lifecycle.

    Questa è una speciale versione di integrare la Libreria di Supporto con Cicli di vita  –  i Componenti dell’Architettura. Se non si utilizza il ciclo di vita della biblioteca, non c’è bisogno di aggiornare da 26.0.2. Per ulteriori informazioni, vedere il i Componenti dell’Architettura note di rilascio.

    Importanti modifiche

    • Frammento di e FragmentActivity (la classe di base per AppCompatActivity) ora implementare il LifecycleOwner interfaccia i Componenti dell’Architettura.

    Invece, Frammento e Attività in Android P non hanno implementato l’interfaccia LifecycleOwner.

    In il post di Google+ (citato in ThanosFisherman risposta), Ian ha fatto un commento:

    non è possibile cambiare il codice del framework dopo che ha spedito – è letteralmente congelato nel tempo. Ciò non significa che le nuove funzionalità e soprattutto senza correzioni di bug. Non è una buona esperienza di sviluppo, in particolare quando si dispone di una cucina completamente supportato, aggiornato, indietro versione compatibile con la Libreria di Supporto.

    Penso che il motivo per cui Android P non adottare Lifecycle. Di conseguenza Fragment è deprecato in Android P.

  2. 0

    Nel caso In cui qualcuno stava cercando il modo per creare un’istanza di frammenti dal nome della classe.

    Vecchio modo:

    Fragment.instantiate(context, fragmentClass)

    Modo nuovo:

    val fm: FragmentManager = ...
    fm.fragmentFactory.instantiate(ClassLoader.getSystemClassLoader(), fragmentClass)

Lascia un commento