1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Android-Entwicklung

Dieses Thema im Forum "FreeBSD - Anwendungen und Ports" wurde erstellt von Morfio, 27 August 2013.

  1. Morfio

    Morfio Member

    Registriert seit:
    3 Juli 2005
    Beiträge:
    558
    Ort:
    Brohltal
    Hallo zusammen,

    gibt es die Möglichkeit, mit FreeBSD direkt oder per Linux-Emulation Android-Anwendungen zu entwickeln?

    Viele Grüße

    Morfio
     
  2. Rakor

    Rakor Moderator Mitarbeiter

    Registriert seit:
    17 September 2009
    Beiträge:
    2.040
    Ort:
    Mannheim
    Es gab mal ein Projekt das SDK auf BSD zu portieren. afaik ist das Projekt jedoch eingeschlafen. In nen VM habe ich es noch nicht versucht.
     
  3. Yamagi

    Yamagi Possessed With Psi Powers Mitarbeiter

    Registriert seit:
    14 April 2004
    Beiträge:
    8.966
    Ort:
    Schleswig-Holstein
    Mit Ubuntu in einer VBox auf einem FreeBSD-Host (ja, ich weiß) war es vor ~2 Jahren möglich.
     
  4. rudy

    rudy aint no stoppin us now

    Registriert seit:
    16 Februar 2007
    Beiträge:
    916
    Ort:
    Antartica SouthOcean :)
  5. noize

    noize Member

    Registriert seit:
    11 Oktober 2010
    Beiträge:
    41
  6. Morfio

    Morfio Member

    Registriert seit:
    3 Juli 2005
    Beiträge:
    558
    Ort:
    Brohltal
    Hallo,

    die Android-Entwicklung unter FreeBSD funktioniert jetzt. Ich lasse die, die es interessiert, teilhaben, wie ich vorgegangen bin.

    Schritt 1 - Installation der Linux-Emulation:

    - Englisch: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/linuxemu-lbc-install.html
    - Deutsch: http://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/linuxemu-lbc-install.html


    Schritt 2 - Linux-Java-SDK installieren

    Mit Version 7 (1.7) hatte ich Probleme, deshalb installierte ich Version 6 (1.6). Man muss es von Oracle herunterladen, wozu ein Account dort benötigt wird, und dann nach /usr/ports/distfiles schieben.

    [thorsten@leela ~]$ portfind linux-sun-jdk
    + linux-sun-jdk-1.6.0.45 (/usr/ports/java/linux-sun-jdk16)


    Schritt 3 - Android-SDK installieren und entpacken

    Die SDK-Tools einzeln reichen, wenn man kein Eclipse nutzt (wie ich). Man muss die Version für Linux herunterladen.

    - http://developer.android.com/sdk/index.html

    Danach das Toolkit entpacken.


    Schritt 4 - Systemanpassungen

    Die Datei "android" im SDK unter "tools" muss angepasst werden.

    java_cmd="java" ändern in java_cmd="/usr/local/linux-sun-jdk1.6.0/bin/java"

    Ebenso muss die Variable JAVA_HOME angepasst werden mit dem folgenden Pfad:

    /usr/local/linux-sun-jdk1.6.0


    Schritt 5 - SDKs herunterladen

    Auf der Kommandozeile "android" starten und die SDKs installieren, die man benötigt. Der Download kann einige Zeit in Anspruch nehmen


    Schritt 6 - adb installieren

    [thorsten@leela ~]$ portfind android
    + android-tools-adb-4.3_1 (/usr/ports/devel/android-tools-adb)


    Schritt 7 - Android-Gerät anzeigen

    In Android muss natürlich USB-Debugging eingeschaltet sein.

    # adb devices

    Werden keine Geräte angezeigt, hilft es bei mir, mit "adb kill-server" das Problem wieder zu beheben. "adb devices" listet dann die Geräte wieder auf. Das passiert bei mir, wenn das Gerät zwischendurch abstecke.

    Android wird nachfragen, ob man den verbundenen Computer erlauben will, dass er auf das Gerät zugreifen darf. Das sollte man natürlich bestätigen.


    Schritt 8 - Erstes Projekt

    - http://developer.android.com/training/basics/firstapp/creating-project.html

    Als Beispiel

    # android list targets

    Dort das richtige Target aussuchen. In meinem Fall ist das für Android 4.3 das Target mit der ID 27:

    id: 27 or "android-18"
    Name: Android 4.3
    Type: Platform
    API level: 18
    Revision: 2
    Skins: WXGA720, WSVGA, WXGA800, WVGA854, WQVGA432, HVGA, WXGA800-7in, WQVGA400, QVGA, WVGA800 (default)
    ABIs : armeabi-v7a, x86

    Dann das Verzeichnis erstellen:

    # mkdir MyFirstApp
    # cd MyFirstApp

    und dann das Projekt initiieren:

    android create project --target 27 --name MyFirstApp --path /path/to/MyFirstApp --activity MainActivity --package com.example.myfirstapp

    Danach kann man es direkt kompilieren:

    # ant debug

    und so auf das Android-Gerät installieren:

    # adb install bin/MyFirstApp-debug.apk

    bzw. zur Reinstallation

    # adb install -r bin/MyFirstApp-debug.apk

    Das war es schon.

    Viele Grüße

    Morfio
     

    Anhänge:

    Zuletzt bearbeitet: 22 September 2013
    eric81 gefällt das.
  7. Rakor

    Rakor Moderator Mitarbeiter

    Registriert seit:
    17 September 2009
    Beiträge:
    2.040
    Ort:
    Mannheim
    Super Morfio. :) Wenn ich mal wieder Luft hab werd ich das mal testen...
     
  8. klimaschreck

    klimaschreck Member

    Registriert seit:
    15 Dezember 2007
    Beiträge:
    231
    vielen Dank für deine Anleitung. Noch ein paar Fragen: Entwickelst du mit eclipse? Passen die Plugins auch für eclipse, speziell auch das Plugin, mit dem die Oberfläche graphisch gezeichnet werden kann?
     
  9. Morfio

    Morfio Member

    Registriert seit:
    3 Juli 2005
    Beiträge:
    558
    Ort:
    Brohltal
    Hallo,

    nein, ich entwickle mit VIM. Eclipse und Konsorten sind irgendwie nichts für mich, so kann ich auch nichts dazu sagen. Beim SDK von Android gibt es allerdings dieses Bundle mit Eclipse, in so fern kannst du das selbst flott ausprobieren, ob das geht.

    Viele Grüße Morfio
     
  10. lechindianer

    lechindianer Kritiker

    Registriert seit:
    20 Januar 2013
    Beiträge:
    177
    Ort:
    Augsburg
    Falls sich jemand bemüht Eclipse unter FreeBSD zu testen, könnte er dann bitte auch Android Studio probieren?
    Für alle, die vor Eclipse zurückschrecken wäre das auf jeden Fall eine Erleichterung, weil der Code von Jetbrains kommt und die wunderbar funktionierende und übersichtliche IDE's bauen. Außerdem mag Google glaub ich eh zu der IDE wechseln...
     
  11. ababab

    ababab New Member

    Registriert seit:
    29 Januar 2009
    Beiträge:
    7
    Hallo, ich habe auch alles ungefähr so gemacht, kann auch android benutzen, aber nur ohne GUI, d.h. mit -u.
    Leider geht dann 'android sdk' nicht, beim Versuch, android mit GUI zu starten, erhalte ich folgendes:

    irgendeine Idee?
     
  12. h^2

    h^2 hat ne Keule +1 Mitarbeiter

    Registriert seit:
    4 September 2009
    Beiträge:
    1.344
    Mich würde ja viel mehr fastboot interessieren. Das hat auch garkein java-geraffel und müsste eigentlich gut gehen.
     
  13. Morfio

    Morfio Member

    Registriert seit:
    3 Juli 2005
    Beiträge:
    558
    Ort:
    Brohltal
    Es gibt noch einen Bug. Beim Ausführen von "ant debug" kann der folgende Fehler auftreten:
    Code:
    Execute failed: java.io.IOException: Cannot run program "xxx/dx": java.io.IOException: error=2, No such file or directory
    Der Shell-Pfad in der Datei ist falsch gesetzt und geht auf /bin/bash anstelle /usr/local/bin/bash. Es genügt, die Datei zu bearbeiten und die Shebang zu ändern. Andernfalls kann man auch /usr/local/bin/bash nach /bin/bash linken, was aber unsauber ist.
     
  14. foxit

    foxit Moderator Mitarbeiter

    Registriert seit:
    4 Juli 2012
    Beiträge:
    1.444
    Ort:
    /home
    @Morfio
    Auch das ist nicht der richtige Weg! Man sollte eigentlich folgendes verwenden:
    Code:
    #!/usr/bin/env bash
    
    Dann klappts auch mit dem "Nachbar" ;)

    [1] http://de.wikipedia.org/wiki/Env
     
  15. Morfio

    Morfio Member

    Registriert seit:
    3 Juli 2005
    Beiträge:
    558
    Ort:
    Brohltal
    Ja, das stimmt natürlich (:
     
  16. h^2

    h^2 hat ne Keule +1 Mitarbeiter

    Registriert seit:
    4 September 2009
    Beiträge:
    1.344
    Hey Morfio, hast du mal was mit Gradle benutzt? Ich bekomm es leider nicht hin.

    Alles so wie in der Anleitung, entsprechende Pakete ausgewählt mit dem SDK, dann habe ich folgendes gemacht (Kontalk als Beispiel-app)
    Code:
    git clone --recursive https://github.com/kontalk/androidclient
    cd androidclient
    export TERM=dumb # frag nicht, gradle kommt bei mir nicht mit xterm klar
    ./gradlew build
    
    dann siehts sehr lange gut aus, er löst haufenweise Abhängigkeiten, fetch ganz viele Sachen und dann wenn es ans Bauen geht knallt es, siehe: https://github.com/rockerhieu/emojicon/issues/54
    Das passiert unter Linux wohl nicht.

    Hast du da einen Tipp?

    Danke und Gruß,
    h^2
     
  17. Morfio

    Morfio Member

    Registriert seit:
    3 Juli 2005
    Beiträge:
    558
    Ort:
    Brohltal
    Hallo,

    Nein, bisher nicht. Ich kann es momentan auch nicht ausprobieren, da ich krank im Bett liege :'(.
     
  18. Azazyel

    Azazyel Active Member

    Registriert seit:
    2 Juni 2005
    Beiträge:
    696
    Die Jungs von JetBrains bauen wirklich fantastische Software. Deren IDEs für Python, Ruby, C/C++, Java und viele andere Sprachen sind der Grund, warum (nicht nur) bei mir emacs und vi zum Programmieren nur noch ein Schattendasein fristen.