Von JavaFx zu Android

spike86

Mitglied
Hallo Leute,

zuerst muss ich betonen, dass ich Java\JavaFx anfänger bin, also bitte verurteilt mich nicht.
Ich habe eine JavaFx anwendung, die so auch super Funktioniert. Diese möchte ich jetzt auf meinem Handy zum Laufen bringen.

Hier erstmal die Fx variante

Java:
public class Main extends Application {

    private double xOffset = 0;
    private double yOffset = 0;

    @FXML
    TextField input;
    @FXML
    TextArea output;
    @FXML
    Text time;

    String word;

    List<String> wordList = new ArrayList<String>();
    List<String> foundWords = new ArrayList<>();

    String list;

    @Override
    public void start(Stage primaryStage) {
        try {
            Parent root = FXMLLoader.load(getClass().getResource("Ui.fxml"));// Mit Scenebuilder verknüpfen
            Scene scene = new Scene(root, 400, 500);
            scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());

            primaryStage.initStyle(StageStyle.TRANSPARENT);

            root.setOnMouseClicked(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent event) {
                    xOffset = event.getSceneX();
                    yOffset = event.getSceneY();
                }
            });

            // move around here
            root.setOnMouseDragged(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent event) {
                    primaryStage.setX(event.getScreenX() - xOffset);
                    primaryStage.setY(event.getScreenY() - yOffset);
                }
            });

            primaryStage.setScene(scene);
            primaryStage.show();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    // Workprogress
    public void progress() {
        MediaPlayer musicplayer;
        Media mp3MusicFile = new Media(getClass().getResource("dontdrop.mp3").toExternalForm());

        musicplayer = new MediaPlayer(mp3MusicFile);
        musicplayer.setAutoPlay(true);
        musicplayer.setVolume(0.2); // from 0 to 1
        
        
        Instant starts = Instant.now();
        word = input.getText().toUpperCase();
        char[] wordChars = word.toCharArray();

        try {
            
            
            InputStream is = getClass().getResourceAsStream("wortliste.txt");
            InputStreamReader isr = new InputStreamReader(is);
            BufferedReader read = new BufferedReader(isr);
            
        

            Arrays.asList(wordList);

            while ((list = read.readLine()) != null) {
                wordList.add(list);

            }
            read.close();

        } catch (Exception e) {
            e.getMessage();
        }
        System.out.println("text eingelesen");

        for (String w : wordList) {
            for (char letter : wordChars) {
                if (word.indexOf(letter) > 0 && foundWords.indexOf(w) < 0 && w.length() <= wordChars.length
                        && notTooManyLetters(w.toCharArray(), wordChars) && sameLetters(w.toCharArray(), wordChars)) {
                    foundWords.add(w);
                }
            }
        }

        System.out.println(foundWords.toString());
        output.setText(foundWords.toString());


        Instant ends = Instant.now();

        time.setText(Duration.between(starts, ends).toMillis() / 1000d + " Secs");
        
    };

    // Work Button
    public void handelabc(ActionEvent event) {
        progress();

        
        

    }

    // Exit Button
    public void handelquit(ActionEvent event){

        
        Platform.exit();
        }

    

    // New Window on Button
    public void handleInfo(ActionEvent event) {
        try {
            Parent root = FXMLLoader.load(getClass().getResource("Info.fxml"));
            Stage stage = new Stage();
            stage.setScene(new Scene(root, 300, 300));
            stage.setTitle("INFO ©Marcus Ferl");
            stage.show();

            MediaPlayer musicplayer;
            {

                Media mp3MusicFile = new Media(getClass().getResource("sonic.mp3").toExternalForm());

                musicplayer = new MediaPlayer(mp3MusicFile);
                musicplayer.setAutoPlay(true);
                musicplayer.setVolume(0.2); // from 0 to 1

                stage.setOnCloseRequest(new EventHandler<WindowEvent>() {

                    @Override
                    public void handle(WindowEvent event) {
                        musicplayer.stop();

                    }
                });

            }

        } catch (IOException e) {

            e.getMessage();
        }

    }

    public static int getNumValue(char[] string, char val) {
        int count = 0;
        for (char c : string) {
            if (c == val) {
                count++;
            }
        }
        return count;
    }

    public static boolean notTooManyLetters(char[] word, char[] wordChars) {
        for (char letter : wordChars) {
            if (getNumValue(word, letter) > getNumValue(wordChars, letter)) {
                return false;
            }
        }
        return true;
    }

    public static boolean sameLetters(char[] w, char[] wordChars) {
        for (char letter : w) {
            if (new String(wordChars).indexOf(letter) < 0) {
                return false;

            }

        }
        return true;
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Diesen hab ich nun versucht mittels Android Studio auf ein Mobile device zu übertragen.
Im endeffekt scheitert es an der Foreach - Schleife, welche immer in einem false endet, ich kann mir aber nicht erklären warum.

Hier mein Android Studio Code
Java:
public class MainActivity extends AppCompatActivity {

String word;
String list;
char[] wordChars;
List<String> wordList = new ArrayList<String>();


EditText input;
TextView output;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    input = (EditText) findViewById(R.id.input);
    output = (TextView) findViewById(R.id.output);

}


/*
Read Textfile
*/
public void readTextfile() {
    BufferedReader read = null;
    try {
        read = new BufferedReader(
                new InputStreamReader(getAssets().open("test.txt")));


        Arrays.asList(wordList);

        while ((list = read.readLine()) != null) {
            wordList.add(list);
        }
        read.close();

    } catch (Exception e) {
        e.getMessage();
    }
    Log.i("ListRead", "Done"); }

public static int getNumValue(char[] string, char val) {
    int count = 0;
    for (char c : string) {
        if (c == val) {
            count++;
        }
    }
    return count;
}

public static boolean notTooManyLetters(char[] word, char[] wordChars) {
    for (char letter : wordChars) {
        if (getNumValue(word, letter) > getNumValue(wordChars, letter)) {
            return false;
        }
    }
    return true;
}

public static boolean sameLetters(char[] w, char[] wordChars) {
    for (char letter : w) {
        if (new String(wordChars).indexOf(letter) < 0) {
            return false;

        }

    }
    return true;
}

// Create Result
public void compare() {

    List<String> foundWords = new ArrayList<String>();
    word = input.getText().toString().toUpperCase();
    wordChars = word.toCharArray();

    for (String w : wordList) {
        for (char letter : wordChars) {
            if (word.indexOf(letter) > 0 && foundWords.indexOf(w) < 0 && w.length() <= wordChars.length
                    && notTooManyLetters(w.toCharArray(), wordChars) && sameLetters(w.toCharArray(), wordChars)) {
                foundWords.add(w);
            } else {
                if (foundWords.size() <= 0) {
                    Log.i("CheckList", "Empty List!");
                }
            }
        }
    }
    output.setText(foundWords.toString());
}

public void onKlickAbc(View view) {
    readTextfile();
    compare();


}}


Wie schon gesagt, ich bin Anfänger und vermute, dass es etwas mit dem Android lifecycle zu tun hat. Wenn es damit zu tun hat, versteh ich die Umsetzung nicht. Die Methode, die das Textfile einliest funktioniert ja auch einfandfrei. Warum dann nicht die, welche alles verarbeitet?
 

mihe7

Top Contributor
Wenn Du vielleicht noch dazuschreibst, bei welcher for-Each-Schleife es scheitert, dann könnte man sich das ansehen. Ich frage mich allerdings, an welcher Stelle die Methode onKlickAbc überhaupt aufgerufen wird.
 

spike86

Mitglied
Die ist mit einem Button verknüpft. Funktioniert auch bis zu dem Teil hier:


Code:
for (String w : wordList) {

        for (char letter : wordChars) {

            if (word.indexOf(letter) > 0 && foundWords.indexOf(w) < 0 && w.length() <= wordChars.length

                    && notTooManyLetters(w.toCharArray(), wordChars) && sameLetters(w.toCharArray(), wordChars)) {

                foundWords.add(w);

            } else {

                if (foundWords.size() <= 0) {

                    Log.i("CheckList", "Empty List!");

                }

            }

Und wie erwähnt, die Kernfunktion dieses Programmes läuft überall nur mit Android Studio nicht. Hab es als normales Java Programm probiert, per Scanner eine Buchstaben Kombination einlesen lassen und dann die gefundenen Wörter ausgegeben, klappt.

In JavaFx ebenfalls, Buchstaben werden eingelesen, verglichen und gefundene Wörter ausgegeben.

Im Android Studio bleibt die foundWords Liste einfach leer, und ich kann mir nicht erklären warum...
 
Zuletzt bearbeitet:

LimDul

Top Contributor
Aus dem Bauch heraus mit dem Debugger ran gehen und schauen, was für werte die einzelnen Variablen haben und was die Methoden zurück geben. Eventuell gibt es seltsame Zeichensatzprobleme, dass etwas sich anders verhält als woanders.
 

lam_tr

Top Contributor
Hallo Leute,

zuerst muss ich betonen, dass ich Java\JavaFx anfänger bin, also bitte verurteilt mich nicht.
Ich habe eine JavaFx anwendung, die so auch super Funktioniert. Diese möchte ich jetzt auf meinem Handy zum Laufen bringen.

Hier erstmal die Fx variante

Java:
public class Main extends Application {

    private double xOffset = 0;
    private double yOffset = 0;

    @FXML
    TextField input;
    @FXML
    TextArea output;
    @FXML
    Text time;

    String word;

    List<String> wordList = new ArrayList<String>();
    List<String> foundWords = new ArrayList<>();

    String list;

    @Override
    public void start(Stage primaryStage) {
        try {
            Parent root = FXMLLoader.load(getClass().getResource("Ui.fxml"));// Mit Scenebuilder verknüpfen
            Scene scene = new Scene(root, 400, 500);
            scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());

            primaryStage.initStyle(StageStyle.TRANSPARENT);

            root.setOnMouseClicked(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent event) {
                    xOffset = event.getSceneX();
                    yOffset = event.getSceneY();
                }
            });

            // move around here
            root.setOnMouseDragged(new EventHandler<MouseEvent>() {
                @Override
                public void handle(MouseEvent event) {
                    primaryStage.setX(event.getScreenX() - xOffset);
                    primaryStage.setY(event.getScreenY() - yOffset);
                }
            });

            primaryStage.setScene(scene);
            primaryStage.show();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    // Workprogress
    public void progress() {
        MediaPlayer musicplayer;
        Media mp3MusicFile = new Media(getClass().getResource("dontdrop.mp3").toExternalForm());

        musicplayer = new MediaPlayer(mp3MusicFile);
        musicplayer.setAutoPlay(true);
        musicplayer.setVolume(0.2); // from 0 to 1
       
       
        Instant starts = Instant.now();
        word = input.getText().toUpperCase();
        char[] wordChars = word.toCharArray();

        try {
           
           
            InputStream is = getClass().getResourceAsStream("wortliste.txt");
            InputStreamReader isr = new InputStreamReader(is);
            BufferedReader read = new BufferedReader(isr);
           
       

            Arrays.asList(wordList);

            while ((list = read.readLine()) != null) {
                wordList.add(list);

            }
            read.close();

        } catch (Exception e) {
            e.getMessage();
        }
        System.out.println("text eingelesen");

        for (String w : wordList) {
            for (char letter : wordChars) {
                if (word.indexOf(letter) > 0 && foundWords.indexOf(w) < 0 && w.length() <= wordChars.length
                        && notTooManyLetters(w.toCharArray(), wordChars) && sameLetters(w.toCharArray(), wordChars)) {
                    foundWords.add(w);
                }
            }
        }

        System.out.println(foundWords.toString());
        output.setText(foundWords.toString());


        Instant ends = Instant.now();

        time.setText(Duration.between(starts, ends).toMillis() / 1000d + " Secs");
       
    };

    // Work Button
    public void handelabc(ActionEvent event) {
        progress();

       
       

    }

    // Exit Button
    public void handelquit(ActionEvent event){

       
        Platform.exit();
        }

   

    // New Window on Button
    public void handleInfo(ActionEvent event) {
        try {
            Parent root = FXMLLoader.load(getClass().getResource("Info.fxml"));
            Stage stage = new Stage();
            stage.setScene(new Scene(root, 300, 300));
            stage.setTitle("INFO ©Marcus Ferl");
            stage.show();

            MediaPlayer musicplayer;
            {

                Media mp3MusicFile = new Media(getClass().getResource("sonic.mp3").toExternalForm());

                musicplayer = new MediaPlayer(mp3MusicFile);
                musicplayer.setAutoPlay(true);
                musicplayer.setVolume(0.2); // from 0 to 1

                stage.setOnCloseRequest(new EventHandler<WindowEvent>() {

                    @Override
                    public void handle(WindowEvent event) {
                        musicplayer.stop();

                    }
                });

            }

        } catch (IOException e) {

            e.getMessage();
        }

    }

    public static int getNumValue(char[] string, char val) {
        int count = 0;
        for (char c : string) {
            if (c == val) {
                count++;
            }
        }
        return count;
    }

    public static boolean notTooManyLetters(char[] word, char[] wordChars) {
        for (char letter : wordChars) {
            if (getNumValue(word, letter) > getNumValue(wordChars, letter)) {
                return false;
            }
        }
        return true;
    }

    public static boolean sameLetters(char[] w, char[] wordChars) {
        for (char letter : w) {
            if (new String(wordChars).indexOf(letter) < 0) {
                return false;

            }

        }
        return true;
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Diesen hab ich nun versucht mittels Android Studio auf ein Mobile device zu übertragen.
Im endeffekt scheitert es an der Foreach - Schleife, welche immer in einem false endet, ich kann mir aber nicht erklären warum.

Hier mein Android Studio Code
Java:
public class MainActivity extends AppCompatActivity {

String word;
String list;
char[] wordChars;
List<String> wordList = new ArrayList<String>();


EditText input;
TextView output;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    input = (EditText) findViewById(R.id.input);
    output = (TextView) findViewById(R.id.output);

}


/*
Read Textfile
*/
public void readTextfile() {
    BufferedReader read = null;
    try {
        read = new BufferedReader(
                new InputStreamReader(getAssets().open("test.txt")));


        Arrays.asList(wordList);

        while ((list = read.readLine()) != null) {
            wordList.add(list);
        }
        read.close();

    } catch (Exception e) {
        e.getMessage();
    }
    Log.i("ListRead", "Done"); }

public static int getNumValue(char[] string, char val) {
    int count = 0;
    for (char c : string) {
        if (c == val) {
            count++;
        }
    }
    return count;
}

public static boolean notTooManyLetters(char[] word, char[] wordChars) {
    for (char letter : wordChars) {
        if (getNumValue(word, letter) > getNumValue(wordChars, letter)) {
            return false;
        }
    }
    return true;
}

public static boolean sameLetters(char[] w, char[] wordChars) {
    for (char letter : w) {
        if (new String(wordChars).indexOf(letter) < 0) {
            return false;

        }

    }
    return true;
}

// Create Result
public void compare() {

    List<String> foundWords = new ArrayList<String>();
    word = input.getText().toString().toUpperCase();
    wordChars = word.toCharArray();

    for (String w : wordList) {
        for (char letter : wordChars) {
            if (word.indexOf(letter) > 0 && foundWords.indexOf(w) < 0 && w.length() <= wordChars.length
                    && notTooManyLetters(w.toCharArray(), wordChars) && sameLetters(w.toCharArray(), wordChars)) {
                foundWords.add(w);
            } else {
                if (foundWords.size() <= 0) {
                    Log.i("CheckList", "Empty List!");
                }
            }
        }
    }
    output.setText(foundWords.toString());
}

public void onKlickAbc(View view) {
    readTextfile();
    compare();


}}


Wie schon gesagt, ich bin Anfänger und vermute, dass es etwas mit dem Android lifecycle zu tun hat. Wenn es damit zu tun hat, versteh ich die Umsetzung nicht. Die Methode, die das Textfile einliest funktioniert ja auch einfandfrei. Warum dann nicht die, welche alles verarbeitet?
Warum benutzt du nicht jfxport um den JavaFX Code nicht mehr umschreiben zu müssen und direkt auf Android laufen zu lassen?
 

spike86

Mitglied
Warum benutzt du nicht jfxport um den JavaFX Code nicht mehr umschreiben zu müssen und direkt auf Android laufen zu lassen?

Hab ich auch schon probiert, aber leider nicht hinbekommen. Erst hab ich Fehler bekommen wegen der gradle Version, das hab ich in den Griff bekommen. Dann Fehler weil die java.exe nicht gefunden wurde oder ausgeführt werden konnte...und und und...Allgemein hatte ich mit jfxport am Ende mehr Probleme als ich wollte.

Ich habe schon sehr viel Zeit für verschiedene Lösungswege investiert, was mich dann langsam demotiviert hat, weswegen ich mich dann hier ans Forum gewendet habe.

Vielleicht nochmal zur Erklärung wie das ganze funktionieren soll.
Ein Texteingabefeld in dem man verschiedene Buchstaben eingibt. "ALAS"
Diese werden dann mit Wörtern in einer Liste abgeglichen. "AS, SAAL ,TEST ,HALLO, ALS"
Ausgabe wäre dann in einem Textview
"AS, ALS, SAAL"
 

spike86

Mitglied
Also hab es nun hinbekomme.

Code:
word = input.getText().toString().toUpperCase();
    wordChars = word.toCharArray();

an dieser Stelle wurde mir der array "char [] word" nicht befüllt, ist leer geblieben. Ich habe alle imports gelöscht, neu gestartet, alles wieder importiert, was importiert werden musste, und dann ging es... ich hab keine Ahnung, warum wieso weshalb.



Nun habe ich aber ein neues Problem, die Liste zum abgleich die ich habe, ist 34 mb groß und enthält demensprechend viele wörter. Leider bekomme ich nun ein Timeout, wenn ich es mit dieser Probiere, wie bekomme ich es hin, das die app schneller vergleicht?
Testliste bestand nur aus 10 Wörtern, deshalb hat es damit super geklappt.
 

LimDul

Top Contributor
Beschreib mal deine Anforderung, was genau passieren soll.
Ein Texteingabefeld in dem man verschiedene Buchstaben eingibt. "ALAS"
Diese werden dann mit Wörtern in einer Liste abgeglichen. "AS, SAAL ,TEST ,HALLO, ALS"
Ausgabe wäre dann in einem Textview
"AS, ALS, SAAL"
Wenn ich das richtig interpretiere, möchtest du wissen welche Wörter aus deiner Liste sich aus der Eingabe (bzw. aus einem Subset der Eingabe) darstellen lassen? Korrekt?

Wenn ja - dann ist char Vergleich hochgradig inperformant, sondern man sollte es auf ein simplereres Problem zurückführen.

Idee: Anstelle über die Chars und Reihenfolge zu gehen - die Reihenfolge ist vollkommen irrelevant bei dem Problem. Relevant ist nur - kommen die Zeichen aus den Testwörtern alle in deiner Eingabe vor.

Also interessiert dich doch nur: Wie oft kommt der Buchstabe A im Testwort vor? Kommt er in der Eingabe mindestens genau so oft vor? (Und das für alle 26 Buchstaben). Das kann man - insbesondere unter Android - mit Sicherheit auch in einer sinnvollen Datenbankstruktur (Sqlite) ablegen. (Im Zweifellsfall eine Tabelle mit 27 Spalten - Dem Wort und jeweils wie oft die Buchstaben A bis Z vorkommen). Wenn du dann ALAS eingibst, willst du nur noch die Zeilen haben wo gilt:

* Anzahl A kleiner gleich 2
* Anzahl B gleich 0
* ...
* Anzahl L kleiner gleich 1
* ...
* Anzahl S kleiner gleich 1

Dann musst das ganze Zeug nicht umbedingt komplett im Speicher halten.
 

LimDul

Top Contributor
Man könnte auch die Zeichen sortiert in einer Spalte ablegen...
Da kommt mir noch eine weitere Idee.

Das Wort "SAAL" wird zusätzlich noch als reguläre Ausdruck gespeichert:
Java:
String patternSaal = ".*A{2}.*L{1}.*S{1}.*".
Dann die eingebenen Buchstaben sortieren und matchen gegen die Ausdrücke
 

spike86

Mitglied
Nochmal vielen danke für die Hilfe, ich war echt froh, dass die App nun läuft. Mit Datenbankstrukturen habe ich mich noch nicht befasst, kommt dann noch, die App war oder ist ein Projekt um zu testen was ich, mit meinen jetzigen Java Kenntnissen leisten kann. Um die App zu verbessern muss ich nun weiter lernen um weiter zu kommen. Also alles schritt für schritt, somit bin ich wieder vollstens motiviert :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M JAVAFX auf Raspberry Pi Android & Cross-Platform Mobile Apps 6
P Java ME JavaFX Windows Mobile 6.5 Android & Cross-Platform Mobile Apps 6
J Benachrichtigung Freigabe ab Android 14 Android & Cross-Platform Mobile Apps 1
J Android Benachrichtigung zum Zeitpunkt ers Android & Cross-Platform Mobile Apps 15
J Das Beispiel von Android erzeugt Fehler Android & Cross-Platform Mobile Apps 8
J Zeitdifferenzen unter Android 7 (API < 26) berechnen Android & Cross-Platform Mobile Apps 4
W Netzwerk Verbindungen Java Android Android & Cross-Platform Mobile Apps 107
Z Android IntelliJ Android & Cross-Platform Mobile Apps 2
M Repository bei Room-Database in Android Studio (Java) Android & Cross-Platform Mobile Apps 2
Android App auf das eigene Handy bekommen Android & Cross-Platform Mobile Apps 3
Alex IV Android App erstellen Android & Cross-Platform Mobile Apps 3
OnDemand CrossPlatform Kotlin iOs/Android Datenverbrauch Android & Cross-Platform Mobile Apps 2
W In Android Studio Integer an andere activities übergeben Android & Cross-Platform Mobile Apps 2
wladp Android Studio Room Database Android & Cross-Platform Mobile Apps 1
N "Schöne" Datatable in Android und setzen von Parametern von Textview im Code Android & Cross-Platform Mobile Apps 5
N Android game programmieren Android & Cross-Platform Mobile Apps 5
T Android Studio: Einen Button in einer For Schleife verwenden Android & Cross-Platform Mobile Apps 2
K BLE Komunikation mit Android studio und esp32 Android & Cross-Platform Mobile Apps 5
G Android UDP Kommunikation Android & Cross-Platform Mobile Apps 1
M Paper DB wird in Android Studio nicht erkannt Android & Cross-Platform Mobile Apps 7
J Android zugrif auf Thread nach Handy drehen. Android & Cross-Platform Mobile Apps 10
T Android Android Augmented Faces in Java. Neue Landmarks erstellen Android & Cross-Platform Mobile Apps 1
K Android Android In-App-Purchase lädt nicht Android & Cross-Platform Mobile Apps 0
Besset Android http request an interne ip adresse funktioniert nicht Android & Cross-Platform Mobile Apps 8
J Is Android Development Head First Outdated? Android & Cross-Platform Mobile Apps 3
J Android Android Datenbankverbindung zum Raspberry Pi Android & Cross-Platform Mobile Apps 1
lolcore Android Studio -Download Documentation for Android SDK Android & Cross-Platform Mobile Apps 0
S Sinnvollste weg eine SQLite DB mit Android auslesen Android & Cross-Platform Mobile Apps 7
W Problem mit Android Studio Android & Cross-Platform Mobile Apps 0
W App Abo Android Android & Cross-Platform Mobile Apps 10
OSchriever Android Android MediaPlayer bei Anruf stoppen/pausieren Android & Cross-Platform Mobile Apps 2
OSchriever Auf onClick-Listener reagieren und Parameter übergeben (Android Studio) Android & Cross-Platform Mobile Apps 4
W removeNetwork Android App mit Spendenaktion fürs Tierheim! Android & Cross-Platform Mobile Apps 1
T Android R.string.test+i Problem Android & Cross-Platform Mobile Apps 2
P undefinierbarer Fehler Android Android & Cross-Platform Mobile Apps 8
T Android ArrayList sortieren mit 2 Werten ohne thencomparing , Wie? Android & Cross-Platform Mobile Apps 10
W Variable überschreiben (Android Studio) Android & Cross-Platform Mobile Apps 2
ruutaiokwu Android Selbst entwickelter SMTP-Client läuft auf PC, nicht aber auf Android Android & Cross-Platform Mobile Apps 9
ruutaiokwu Android Warum muss man bei Android Studio immer 2x auf "Run" klicken damit die App auf dem Gerät startet Android & Cross-Platform Mobile Apps 8
ruutaiokwu Android Wo das 'android.useAndroidX' property hinzufügen? Android & Cross-Platform Mobile Apps 8
ruutaiokwu Android In einem Android-“Spinner”-Element GLEICHZEITIG Bild (links) UND Text (rechts) anzeigen Android & Cross-Platform Mobile Apps 0
P Login und Registrierung Android Anzeige Android & Cross-Platform Mobile Apps 7
K Android to Pi | Websocket Problem Android & Cross-Platform Mobile Apps 3
ruutaiokwu Wie fügt man bei Android Studio .jar-Libraries zu einem Android-Java-Projekt hinzu? Android & Cross-Platform Mobile Apps 33
M Komponenten positionieren in Android Studio 3.6.3 Android & Cross-Platform Mobile Apps 1
M Android Studio - Property-Fenster einblenden Android & Cross-Platform Mobile Apps 1
M Android Studio - App auf dem Smartphone testen Android & Cross-Platform Mobile Apps 7
M Barrierefreie Appentwicklung für Android - Suche Codebeispiele Android & Cross-Platform Mobile Apps 8
M Android Studio - Configuration fehlt Android & Cross-Platform Mobile Apps 20
M Wo kann ich das Android SDK herunterladen / wie kann ich es installieren Android & Cross-Platform Mobile Apps 3
M Unsupported class file major version 57 - Fehlermeldung bei Android Studio Android & Cross-Platform Mobile Apps 27
ruutaiokwu Android Studio (SDK) ANDROID_SDK_ROOT-Variable? Android & Cross-Platform Mobile Apps 5
O Web API in Android (JAVA) einbinden Android & Cross-Platform Mobile Apps 3
J Android Studio macht seltsame Sachen Android & Cross-Platform Mobile Apps 2
J Android 9.1 aber android Studio findet API22 Android & Cross-Platform Mobile Apps 0
Dimax Web-Seite in native app convertieren mit Android Studio Android & Cross-Platform Mobile Apps 8
A Android Studio: while-Schleife beginnt nicht Android & Cross-Platform Mobile Apps 5
lolcore android studio: fehler bei laden des emulators Android & Cross-Platform Mobile Apps 10
J Android App - Browser öffnen und Text eingeben/Button click auslösen Android & Cross-Platform Mobile Apps 10
A Android-Studio: 2. Layout nach kurzer Zeit aufzeigen Android & Cross-Platform Mobile Apps 2
A jpg wird im Android Studio nicht akzeptiert Android & Cross-Platform Mobile Apps 3
J Android Studio - ArrayList - Selected Item ermitteln Android & Cross-Platform Mobile Apps 13
T Android SDK-Manager startet nicht in Eclipse Android & Cross-Platform Mobile Apps 5
T Bringen mir die Java-Basics irgendetwas für die Android-Programmierung Android & Cross-Platform Mobile Apps 4
J Was soll das bedeuten ? does not require android.permission.BIND_JOB_SERVICE permission Android & Cross-Platform Mobile Apps 7
A Android Studio: ImageView verpixelt Android & Cross-Platform Mobile Apps 2
J intend Service im Android Studio Android & Cross-Platform Mobile Apps 4
L Android Android Development eventuell mit Flutter Android & Cross-Platform Mobile Apps 1
S Android Layout - welchen Typ? Android & Cross-Platform Mobile Apps 3
T Fehler Android Studio: java.net.MalformedURLException: no protocol: http%3A%2F%2Fwww.mal ..... Android & Cross-Platform Mobile Apps 2
Arif Android Android Studio: Fehler beim Einbinden fremder Bibliothek? Android & Cross-Platform Mobile Apps 2
L Android Android Contacts DB auslesen Android & Cross-Platform Mobile Apps 1
A Android Studio - App mit Nearby Android & Cross-Platform Mobile Apps 1
L Android content URI Datei einlesen Android & Cross-Platform Mobile Apps 9
N Android Game Background Service Android & Cross-Platform Mobile Apps 11
Jackii Android Android Studio Error im Testlauf ohne zu programmieren Android & Cross-Platform Mobile Apps 9
B Android Probleme mit Android Studio Android & Cross-Platform Mobile Apps 6
Excess Android Service läuft nicht in Sandby weiter Android & Cross-Platform Mobile Apps 2
B Android Projekt für Android und IOS erstellen? Android & Cross-Platform Mobile Apps 5
J App funktioniert auf Android 5, auf 6 nicht Android & Cross-Platform Mobile Apps 2
J Android Snake Android & Cross-Platform Mobile Apps 15
J Android TaschenRechner Android & Cross-Platform Mobile Apps 22
I Das Problem mit der Tastatur... android:windowSoftInputMode="adjustPan" Android & Cross-Platform Mobile Apps 1
E Wie erhalte ich Zugriff auf das Microfon? (Android Studio) Android & Cross-Platform Mobile Apps 9
C Android Programmierung speziell oder einfach Java Buch kaufen? Android & Cross-Platform Mobile Apps 3
B Android Kein Zugriff auf Telefonspeicher (Android 6) Android & Cross-Platform Mobile Apps 1
T Android Equalizer für Android Android & Cross-Platform Mobile Apps 3
L Android Android Studio - Exportierte APK funktioniert nicht Android & Cross-Platform Mobile Apps 6
L Android Methode funktioniert nicht unter Android Android & Cross-Platform Mobile Apps 3
A Beginnen mit Serverkommunikatsion in Android Studio Android & Cross-Platform Mobile Apps 6
E Android Studio Android & Cross-Platform Mobile Apps 15
L Android Android Studio Setup killt Explorer Android & Cross-Platform Mobile Apps 3
K Android Videos rendern Android & Cross-Platform Mobile Apps 1
J Variable in strings.xml (Android Studio) Android & Cross-Platform Mobile Apps 0
B Android Android Studio lässt PC abstürzen Android & Cross-Platform Mobile Apps 3
B Android App Fehler Android & Cross-Platform Mobile Apps 21
J android Spinner funktioniert nicht Android & Cross-Platform Mobile Apps 14
G Android Push Notification Android & Cross-Platform Mobile Apps 2
Light Lux Fehlermeldung unter Android Studio Android & Cross-Platform Mobile Apps 1
D Android Android Apps direkt vom Handy aus programmieren? Android & Cross-Platform Mobile Apps 2

Ähnliche Java Themen

Neue Themen


Oben