JavascriptProva

sabato 8 aprile 2017

Aggiunta ed eliminazione di una libreria aar da un progetto Android

Importazione di una libreria esterna (aar).
Intanto con New -> New Module ho modificato setting.gradle in questo modo:
include ':app', ':mylibrary-release'


e ho visto apparire il modulo mylibrary-release nella directory principale del mio progetto.

Quindi con New -> Import module, importo il modulo mylibrary che ora mi appare anch'esso nella directory.
Quindi devo risistemare il build.gradle di app aggiungendo l'ultima riga:
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:24.2.1'
    testCompile 'junit:junit:4.12'
    compile project(":mylibrary")
}
Ora faccio la verifica: in questa libreria c'è una classe chiamata semplicemente Classe. Vedo se viene riconosciuta.
Ma prima devo sincronizzare Gradle!

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Classe classe=new Classe();
        classe.setNumero(123);
        System.out.println(classe.getNumero());

    }
}
Non ho ottenuto messaggi di errore. Ciò significa che la classe è stata riconosciuta.
Ora eseguo:
04-06 21:19:37.172 11679-11679/? I/System.out: 123


Perfetto!
Ora sarà più difficile togliere questa libreria, perché non so se ricordo bene la procedura...

Sono andato su File -> Project Structure e, andando su app, ho eliminato mylibrary.
Come risultato, build.gradle di app si è modificato con la sparizione della riga che avevo aggiunto a dependencies:
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:24.2.1'
    testCompile 'junit:junit:4.12'
}
Persiste nel setting.gradle questo:
include ':app', ':mylibrary-release', ':mylibrary'


Nel riquadro a sinistra permangono sia mylibrary sia mylibrary-release.

Torno su Project Structure ed elimino a sinistra sia library sia library-release...

Permangono nel riquadro a sinistra i due moduli, mentre setting.gradle si è modificato così:
include ':app'


Proviamo se il progetto "vuoto" gira normalmente...

Sembra di sì. Sia pure ancora in modo parzialmente empirico, sono riuscito ad eliminare la libreria aggiunta.

Nessun commento:

Posta un commento