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