File -> New Module -> Android Library
Scelta del nome dell'applicazione e del nome del modulo.
Android Studio elabora...
E' apparsa la cartella mylibrary (nome scelto per il modulo).
Ora devo agire su Gradle.
Apro Settings.Gradle e mi appare questo:
include ':app', ':mylibrary'Quindi apro build.gradle(Module app).
E mi appare questo:
apply plugin: 'com.android.application' android { compileSdkVersion 24 buildToolsVersion "24.0.3" defaultConfig { applicationId "com.antonello.laboratoriolibrerie" minSdkVersion 18 targetSdkVersion 24 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) 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' }e vi devo aggiungere la riga:
....
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
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")
}
e quindi clicco Sync Now sulla barra di Gradle.
Bene, ora ho una libreria senza libri!
Provo ad eseguire...
Non succede nulla, ovviamente.
Ora provo a istanziare una fantomatica classe...
public class MainActivity extends AppCompatActivity { Classe classe; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); classe=new Classe(); } }Ottengo messaggi di errore.
Quindi prendo mylibrary - java - com.antonello.mylibrary e ci aggiungo una classe chiamata Classe con il seguente codice:
public class Classe { private int numero; public void setNumero(int n){ numero=n; } public int getNumero(){ return numero; } }Ora torno su MainActivity e riprovo a istanziare la classe Classe:
public class MainActivity extends AppCompatActivity { Classe classe; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); classe = new Classe(); classe.setNumero(246); System.out.println(classe.getNumero()); } }Non ottengo messaggi di errore.
Eseguo:
04-05 21:59:26.757 9815-9815/? I/System.out: 246Ecco, dopo vari problemi e distrazioni (mancanza di spazio sull'emulatore, collegamento erroneo del cellulare reale al computer...) alla fine la cosa è riuscita!
Nessun commento:
Posta un commento