Jump to content

[Java] [APP] Haus der Zukunft


Recommended Posts

Hallo liebes TF-Forum!

 

Ich habe, für ein Projekt in meiner Schule, ein "kleines" Haus gebaut.

Ziel war es ein Haus mit einer Türöffnung via Schrittmotor zu machen, mit einer WIFI-Extension drahtlos.

 

Per Programm, Java 6 auf MacOSX Snow Leopard funktioniert alles!

 

Nun habe ich es als App umgeschrieben, Problem: Er installiert die App auf beiden Handys (Ein Emulator Android Froyo 2.2 und einmal SGS2 IceCream 4.0.4) die App, stürzen beim aufrufen jedoch ab.

Als ich das "halloWorld" installiert und aufgerufen habe gings noch.

 

(Was meine vermutung ist:

Ich habe die Source von TF in src unter einem neuen Packet com.tinkerforge kopiert. So konnte ich sie unverändert im Code aufrufen. Kommt er damit nicht klar?

)

 

Im Anhang mal einfach aus meinem Workspace gepackt das Projekt.

 

Vielen Dank im Voraus,

Gruß Flo

FuturHouse.zip

Link zu diesem Kommentar
Share on other sites

Per Programm, Java 6 auf MacOSX Snow Leopard funktioniert alles!

 

Nun habe ich es als App umgeschrieben, Problem: Er installiert die App auf beiden Handys (Ein Emulator Android Froyo 2.2 und einmal SGS2 IceCream 4.0.4) die App, stürzen beim aufrufen jedoch ab.

 

Bekommst du dazu genauere Informationen? Einen Stacktrace der Exception? Oder wie äußert sich, dass es abstürzt?

Link zu diesem Kommentar
Share on other sites

Soo grade von der Wisn zurück, hier mal die Fehler die mir LogCat ausgibt:

 

10-04 14:32:48.588: E/AndroidRuntime(278): FATAL EXCEPTION: main
10-04 14:32:48.588: E/AndroidRuntime(278): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.minnecker.futurhouse/com.minnecker.futurhouse.Main}: java.lang.NullPointerException
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.os.Handler.dispatchMessage(Handler.java:99)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.os.Looper.loop(Looper.java:123)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.ActivityThread.main(ActivityThread.java:4627)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at java.lang.reflect.Method.invokeNative(Native Method)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at java.lang.reflect.Method.invoke(Method.java:521)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at dalvik.system.NativeStart.main(Native Method)
10-04 14:32:48.588: E/AndroidRuntime(278): Caused by: java.lang.NullPointerException
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.Activity.findViewById(Activity.java:1637)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at com.minnecker.futurhouse.Main.<init>(Main.java:20)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at java.lang.Class.newInstanceImpl(Native Method)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at java.lang.Class.newInstance(Class.java:1429)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
10-04 14:32:48.588: E/AndroidRuntime(278): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577)
10-04 14:32:48.588: E/AndroidRuntime(278): 	... 11 more

 

 

 

Ehem.. Java Nullpoint Exeption? :o

 

Ich weiß trotzdem nicht weiter.. Das heißt er kann das Fenster nicht initialisieren? Warum?

 

Ohh, kann es sein das ich den ToggleButton erst in der Mainmethode setzen darf, oder sowas in der Art?

 

Ist bestimmt nur wieder n kleiner Fehler, aber ich finde ihn schon wieder nicht..

 

Ich such derweil mal weiter meinen Fehler, schönen Tag euch allen noch, und danke im Voraus!  :)

Gruß Flo

Link zu diesem Kommentar
Share on other sites

Ohh, kann es sein das ich den ToggleButton erst in der Mainmethode setzen darf, oder sowas in der Art?

 

Sieht so aus. Wenn ich das Log richtig verstehe löst der Aufruf von findViewById die Exception aus:

 

private ToggleButton openclose = (ToggleButton) findViewById(R.id.openclosedoor);

 

Spontan ins Blaue geraten würde ich sagen du solltest den Aufruf in onCreate nach dem Aufruf von setContentView machen.

Link zu diesem Kommentar
Share on other sites

Ich hab mich zu früh gefreut... Hier einfach mal die neue Meldung, mit der ich nix anfangen kann...

Bzw. schreibt er das er etwas an der aufzurufenden Methode auszusetzen hat und unten nochmal nullpointerex usw...

 

Versteht das jemand? :/

 

Hier mal die Meldung:

10-04 19:00:12.690: E/AndroidRuntime(299): FATAL EXCEPTION: main
10-04 19:00:12.690: E/AndroidRuntime(299): java.lang.IllegalStateException: Could not execute method of the activity
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.view.View$1.onClick(View.java:2072)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.view.View.performClick(View.java:2408)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.view.View$PerformClick.run(View.java:8816)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.os.Handler.handleCallback(Handler.java:587)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.os.Handler.dispatchMessage(Handler.java:92)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.os.Looper.loop(Looper.java:123)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.app.ActivityThread.main(ActivityThread.java:4627)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at java.lang.reflect.Method.invokeNative(Native Method)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at java.lang.reflect.Method.invoke(Method.java:521)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at dalvik.system.NativeStart.main(Native Method)
10-04 19:00:12.690: E/AndroidRuntime(299): Caused by: java.lang.reflect.InvocationTargetException
10-04 19:00:12.690: E/AndroidRuntime(299): 	at com.minnecker.futurhouse.Main.connectBT(Main.java:60)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at java.lang.reflect.Method.invokeNative(Native Method)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at java.lang.reflect.Method.invoke(Method.java:521)
10-04 19:00:12.690: E/AndroidRuntime(299): 	at android.view.View$1.onClick(View.java:2067)
10-04 19:00:12.690: E/AndroidRuntime(299): 	... 11 more
10-04 19:00:12.690: E/AndroidRuntime(299): Caused by: java.lang.NullPointerException
10-04 19:00:12.690: E/AndroidRuntime(299): 	... 15 more

 

Es geht wohl um den folgenden Code:

    private static void connectToTF(String host, int port) {
        try {
            ipcon = new IPConnection(host, port);
            ipcon.addDevice(doorMotor);
            doorMotor.setMotorCurrent(300);
            doorMotor.setMinimumVoltage(12000);
            doorMotor.enable();
            openclose.setEnabled(true);
            /*
            doorMotor.addListener(new BrickStepper.PositionReachedListener() {
                public void positionReached(int position) {
                    doorProzess.setProgress(position);
                }
            });
            */
        } catch(Exception e) {
            return;
        }
    }
    
    public void connectBT(View view) {
    	String hostTMP = ipADDR.getText().toString();
    	int portTMP = Integer.getInteger(portADDR.getText().toString());
    	connectToTF(hostTMP, portTMP);
    }

 

Danke im Vorraus..

Gruß Flo

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...