Stai programmando la tua app per Android e ti chiedi come implementare una funzionalità di screenshot?

Farlo è molto semplice grazie al codice che ti fornirò.

Anzitutto devi assicurarti di aggiungere il seguente permesso nel Manifest della tua app:

 

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

 

A questo punto possiamo passare al codice vero e proprio (che va messo nella Activity):

 

Come si programma uno screenshot su Android

 

N.B.: Tieni presente che il seguente codice andrà a salvare lo screenshot appena creato nella memoria esterna del device (quando presente).

Invece con quest’altro codice puoi aprire l’immagine appena creata:

 

Come si programma uno screenshot su Android 2

Ricorda che se vuoi usarlo nel Fragment (nella funzione takeScreenshot()) allora al posto di:

 

View v1 = getWindow().getDecorView().getRootView();

 

devi inserire:

 

View v1 = getActivity().getWindow().getDecorView().getRootView();

 

Spero che farai buon uso del codice.



8 commenti

Laura Catania · 01/04/2018 alle 11:58

Praticamente il mio computer spesso fa dei rumori strani esce aria calda e poi ogni tanto si impalla e rimane impallato per mezz’ora secondo te che cosa può essere successo? Lo fa tutti i giorni..

Laura Catania · 01/04/2018 alle 10:06

È molto interessante quello che scrivi, ma questa cosa uno la potrebbe utilizzare anche per gli Iphone?
Grazie.

    Fabrizio Rocca · 01/04/2018 alle 11:12

    Grazie per il commento.
    Purtroppo no, negli iPhone, o più specificatamente in iOs, viene utilizzato un linguaggio di programmazione completamente diverso per le app, si chiama Swift.

      Laura Catania · 01/04/2018 alle 11:22

      Quindi quello che tu se posso darti del tu hai scritto vale solo per gli Android, ma per qualsiasi tipo di Android intendo dire tutti gli Android ad esempio: Samsung, Huawei, Nokia, LG e altri che ora non ricordo è giusto o vale solo per alcuni tipi di Android..
      Grazie per la risposta

        Fabrizio Rocca · 01/04/2018 alle 11:38

        Assolutamente sì, sempre Android montano.
        Di aspetto potrebbe sembrare che usino sistemi diversi ma sempre di Android si tratta, poi ciascun produttore vi applica la sua interfaccia grafica (vedi ad esempio Samsung con la sua TouchWiz o Huawei con la EMUI).
        Spero di esserti stato utile.

          Laura Catania · 01/04/2018 alle 11:44

          Sì mi sei stato molto utile, posso farti poi un’altra domanda che non c’entra nulla con quello che hai pubblicato..

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *