Beiträge von AirDevil

    Hallo zusammen,


    bei meiner Registrierung in diesem Forum habe ich eine Hotmail-Adresse für den Aktivierungslink angegeben. Trotz mehrfacher Versuche ist die Aktivierungsmail bis heute nicht in meinem Hotmail-Postfach angekommen. Auch der Junk-Mail Ordner, der normalerweise alles sonst so ungeliebte anzeigt war leer. Genauso alle anderen Ordner.


    Das Versenden der Aktivierungsmail an ein alternatives web.de-Konto hingegen hat direkt funktioniert.


    Ist dieses Hotmail-Problem im Forum bekannt bzw. auch bei anderen aufgetreten?



    Gruß AirDevil

    Hallo Marco,


    besten Dank für die schnelle und weiterführende Antwort. Deine beiden Lösungsvarianten stimmen den Compiler glücklich. Warum das eine schöner ist als das andere erschließt sich mir dabei noch nicht.


    Hauptproblem:
    Leider startet die App gar nicht erst. Es wird in LogCat folgender Fehler gezeigt:
    java.lang.InstantiationException: can't instantiate class com.xxx.sensordialog.SensorDialog; no empty constructor


    Aus der Oracle-Hilfe zu dem Fehler werde ich nicht wirklich schlau und in StackOverflow-Posts wird sich immer wieder auf static bezogen.


    Die SensorDialog.java habe ich an der entsprechenden Stelle so angepasst (schnelle Variante - aber auch die schönere Variante führt zum gleichen Fehler):

    Java
    public SensorDialog(Context ctx, Sensor sensor) {
       super(ctx);
       mSensor = sensor;
    }


    So wie ich es verstehe liefert der Java-Code über das Argument "mDataTxt" die gewünschten Informationen in ein TextView-Element

    Java
    mDataTxt = (TextView) findViewById(R.id.sensorDataTxt);


    Dieses habe ich in der activity_sensor_dialog.xml entsprechend mit dem Befehl innerhalb des TextView verknüpft

    XML
    android:id="@+id/sensorDataTxt"


    Die Manifest-Datei ist über den SensorDialog informiert

    XML
    <activity android:name=".SensorDialog">
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>


    Die androidspezifische Umgebung um die App zu builden sollte also passen, oder?

    Hallo Androidentwickler,


    ich arbeite mich derzeit mit Android Studio in die Android- und Java-Programmierung ein und beschäftige mich aktuell mit den Sensoren.
    Dabei bin ich auf folgenden Java-Code gestoßen, den ich in Android Studio zu Testzwecken übernommen habe:
    https://software.intel.com/de-…tom-based-android-tablets
    (Code-Beispiel 2-2)


    Beim Kompilieren bekomme ich folgende Fehlermeldung:
    Error:(21, 9) error: constructor SensorDialog in class SensorDialog cannot be applied to given types;
    required: Context,Sensor
    found: Context
    reason: actual and formal argument lists differ in length


    Der Kompilierfehler bezieht sich auf den SensorDialog-Konstruktor in der SensorDialog-Klasse:

    Java: SensorDialog.java
    public class SensorDialog extends Dialog implements SensorEventListener {
       Sensor mSensor;
       TextView mDataTxt;
       private SensorManager mSensorManager;
       
       public SensorDialog(Context ctx, Sensor sensor) {
          this(ctx);
          mSensor = sensor;
       }


    Ich habe mich mit den Zeilen nun mehrere Stunden auseinandergesetzt und kann hoffentlich auch Tippfehler ausschließen.
    Daher möchte ich folgende Fragen gerne in diesem Forum stellen:


    Hauptfrage:
    Warum findet der Compiler den Sensor-Wert nicht? So wie ich den Code lese wird der Wert sensor mit dem vorher als Sensor deklarierten Wert mSensor bedient.


    Zusatzfrage:
    Was wird in diesem Fall konkret mit dem Befehl this(ctx) zurückgegeben? So wie ich es aus der Oracle-Java-Hilfe herauslese, wird der this-Befehl in einem Konstruktor verwendet um auf andere Konstruktoren in derselben Klasse zu verweisen. Aus den Erläuterungen zu Context auf der developers.android-Seite kann ich nicht erkennen welche konkreten Werte hier ausgelesen werden und warum diese hier überhaupt notwendig sind.


    Es würde mich freuen, wenn mir jemand bei der Lösung dieses Problems ein paar Tipps geben könnte.


    Viele Grüße
    AirDevil



    Hier noch der Vollständigkeit halber der komplette Quellcode aus Android Studio zum Abgleich mit der Website-Version von Intel: