Christian H., fast 39, fast Android App Entwickler

So eine App für Android zu entwickeln ist eigentlich gar nicht so schwer. Gut, für jemanden, der eher Kommandozeilenprogramme schreibt, ist es doch etwas kompliziert, aber es geht. Also, gut 10 Jahre nach den ersten GUI Gehversuchen starten wir in das mobile Zeitalter und das schaut so aus:
Bildschirmfoto 2014-09-20 um 11.30.59
Es gibt einen Button „Start“ und wenn man den drückt, dann ändert sich der Text unten in „Ein“ oder „Aus“. Zugegebenermaßen ist das auf den ersten Blick noch etwas rudimentär, aber bis es so weit ist muss man:

  1. Die Entwicklungsumgebung zum Laufen bringen
  2. Ein Hello World Programm schreiben
  3. Einen Telefon Emulator konfigurieren (siehe Seite 5), damit man nicht ständig das Handy am Laptop hängen haben muss

Also etwas mehr Respekt bitte. Jetzt wo die Basics vorhanden sind braucht es noch eine Idee für eine gute Anwendung.

Keep on coding

Heute Abend war mir so langweilig, dass ich wieder angefangen habe zu programmieren. Wenn das so weiter geht, wird es mit dem ersten Release von TotalSubbaBackup 2007 doch noch was, wer hätte das gedacht…?! Der Markt der Mac-Backup-Lösungen könnte zum Jahresende noch ganz schön aufgemischt werden.

Call Groovy Script From Java Class

Today vice versa: Call the groovy script we created last time from a Java class:
[JAVA]
package test;
import groovy.lang.GroovyClassLoader;
import groovy.lang.GroovyObject;
import java.io.File;
import java.io.IOException;
import org.codehaus.groovy.control.CompilationFailedException;
public class GroovyScriptRunner {
private String filename=““;
public GroovyScriptRunner(String filename){
this.filename=filename;
}
public boolean run(){
ClassLoader parent = getClass().getClassLoader();
GroovyClassLoader loader = new GroovyClassLoader(parent);
Class groovyClass;
try {
groovyClass = loader.parseClass(new File(this.filename));
} catch (CompilationFailedException e) {
e.printStackTrace();
return false;
} catch (IOException e) {
e.printStackTrace();
return false;
}
// let’s call some method on an instance
GroovyObject groovyObject;
try {
groovyObject = (GroovyObject) groovyClass.newInstance();
} catch (InstantiationException e) {
e.printStackTrace();
return false;
} catch (IllegalAccessException e) {
e.printStackTrace();
return false;
}
Object[] args = {};
// call main
groovyObject.invokeMethod(„main“, args);
return true;
}
public static void main(String[] args) {
GroovyScriptRunner runner = new GroovyScriptRunner(„test/GroovyTest.groovy“);
runner.run();
}
}
[/JAVA]
More infos can be found here: http://groovy.codehaus.org/Embedding+Groovy

Java skripten, #2

Was mir neulich bei meinem ersten Groovy-Ausflug nicht aufgefallen ist, ist die Tatsache wie einfach man Groovy-Skripte über die Kommandozeile aufrufen kann, wie es geht steht hier: http://groovy.codehaus.org/Installing+Groovy .
Wenn man dann noch den CLASSPATH entsprechend setzt, klappt die Integration mit eigenen Java-Klassen prima. Damit tut die Grenze zwischen Java und Skript ganz schön schön verschwinden. Ich bin begeistert!

Call Java Classes Form Groovy

Idea: Using Java objects in a scripting language. Sample Java class, just prints a string parameter:
[JAVA]
package test;
public class Test {
public Test(String in){
System.out.println(„Java: „+in);
}
}
[/JAVA]
Groovy class – uses Java class and assigns a string parameter:
[JAVA]
package test;
import test.Test;
class GroovyTest {
static void main(args) {
def c = „groovy: Hallo“;
println(c);
for (i in 0 ..5){
def inte = i.toString();
def x = new test.Test(inte);
}
}
}
[/JAVA]
The output is here:

groovy: Hallo
Java: 0
Java: 1
Java: 2
Java: 3
Java: 4
Java: 5

Step 1 – ok, Step 2 – find project to use.