1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

AndroidAPP im Emulator von außen erreichbar machen?

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von domino-bs, 23.03.2011.

  1. domino-bs, 23.03.2011 #1
    domino-bs

    domino-bs Threadstarter Neuer Benutzer

    Beiträge:
    18
    Erhaltene Danke:
    0
    Registriert seit:
    22.03.2011
    Phone:
    HTC Desire HD
    Hallo zusammen..

    Ich suche schon seit ein paar Tagen das Netz ab (inkl. android-hilfe.de), frage aber anscheinend nicht richtig oder sehe die Informationen einfach nicht.

    Hier also mein Problem:
    Ich habe eine APP im Emulator, die ich über das Netzwerk erreichen muss.
    Der Emulator läuft auf Laptop 1 (IP: 192.168.2.153). Auf Laptop 2 (IP: 192.168.2.154) läuft ein Tool. App und Tool schicken per Multicast Pakete durch den Äther worin sie ihre Anwesenheit inkl. ihrer IP mitteilen. Das klappt auch super und jeder weiß vom anderen. Wenn jedoch Laptop 2 dem APP ein Datenpaket direkt (nicht per Multicast) schicken will versucht dieser an die IP-Adresse 10.0.2.15 zu senden (de Emulator-Adresse), was natürlich in die Hose geht, weil dazu keine Route bekannt ist.
    Betriebssysteme sind bei beiden Laptops Linux (Ubuntu). Entwickelt wird in Eclipse, woraus ich auch den Emulator starte.
    Bei meiner Netzrecherche bin ich über NAT gestolpert, jedoch befürchte ich, dass ich das so nicht nutzen kann, weil der Emulator ja kein eigenes Netzwerkinterface (bzw. keines, dass mein Laptop1 erreichen kann) hat, oder?
    Ich weiß, dass ich das Problem nicht hätte, wenn ich das APP auf dem Gerät selbst laufen lasse, aber die APP ist noch nicht so weit ohne Debugger laufen gelassen zu werden ;-)

    Ich wäre über Hilfe wirklich super dankbar! Auch neue Denkanstöße sind gerne gelesen.

    Gruß DoM
     
  2. muck, 23.03.2011 #2
    muck

    muck Android-Hilfe.de Mitglied

    Beiträge:
    62
    Erhaltene Danke:
    7
    Registriert seit:
    07.11.2010
    Was spricht dagegen auf dem Gerät zu debuggen? Funktioniert einwandfrei und das ganze läuft auch deutlich schneller als im Emulator.

    Im Manifest in Application:
    android:debuggable=["true"]

    eintragen und im Handy Debugging erlauben:

    Einstellungen => Anwendungen => Entwicklung => USB-Debugging aktivieren.
     
  3. Neeldarax, 24.03.2011 #3
    Neeldarax

    Neeldarax Erfahrener Benutzer

    Beiträge:
    170
    Erhaltene Danke:
    31
    Registriert seit:
    07.12.2010
    Hi domino-bs,

    Private IP-Adresse ? Wikipedia sollte das Problem der erreichbarkeit erklären.

    Port-Forwarding könnt ne Möglichkeit sein, wie du das lösen kannst. Ist aber nur so ne Idee.

    regards
     
  4. Kranki, 24.03.2011 #4
    Kranki

    Kranki Ehrenmitglied

    Beiträge:
    3,831
    Erhaltene Danke:
    814
    Registriert seit:
    19.07.2009
    Tablet:
    Samsung Galaxy Tab 3 7.0 Lite
  5. domino-bs, 24.03.2011 #5
    domino-bs

    domino-bs Threadstarter Neuer Benutzer

    Beiträge:
    18
    Erhaltene Danke:
    0
    Registriert seit:
    22.03.2011
    Phone:
    HTC Desire HD
    Moin

    Danke für die Anregungen! Portforwarding könnte mit statischen Routen wirklich eine Möglichkeit sein. Letztes Problem ist, dass ich ein offizielles Kommunikationsprotokoll auf TCP-Basis für Android schreibe, dass halt auf einem bestimmten Port lauscht und sendet. Sprich ich müsste vorher dann per "Destination-NAT" (Network Address Translation ? Wikipedia) dafür sorgen, dass die auf diesem Port gesendeten Pakete bei meinem Host auf einem anderen Port ankommen, damit ich sie wieder auf den ursprünglichen Port an den Emulator forwarden kann..
    Oder ist es sogar möglich einen Port "durchzureichen" also etwas nach der Art "adb forward tcp:1234 local:1234"? Da ich nirgends ein virtuelles Netzwerkdevice sehen konnte gehe ich mal stark von einem Dienst aus, der die Pakete an der Netzwerkkarte des Host auf einem bestimmten Port abgreift und einfach dem Emulator in die emulierte WLanverbindung drückt oder?

    Ein anderer Ansatz ist der von muck. Da das Ganze ja später ohnehin auf Geräten laufen soll spiele ich gerade mit dem Gedanken mir ein Point of View mobii 7 zu holen und damit zu entwickeln. Handynetze brauche ich ja nicht und günstiger kommt man kaum an Hardware, die von der Ausstattung her einem gängigen Smartphone nahe kommt. Allerdings finde ich zu Point of View keine Vendor ID bzw. OEM Treiber (für Windows), um die Verbindung mit meinem Eclipse herzustellen. Daher habe ich mal an die Mobii-Abteilung hier im Forum eine Anfrage gestellt (Android Forum & Community - Android-Hilfe.del). Vielleicht ist die Frage hier auch besser aufgehoben im Entwicklerforum:

    Kennt jemand die VendorID von point of View oder aber einen link zum OEM-Treiber für den Verbindungsaufbau vom Point of View Mobii 7 zu Eclipse?
    (Using Hardware Devices | Android Developers)

    Gruß DoM
     
  6. Kranki, 24.03.2011 #6
    Kranki

    Kranki Ehrenmitglied

    Beiträge:
    3,831
    Erhaltene Danke:
    814
    Registriert seit:
    19.07.2009
    Tablet:
    Samsung Galaxy Tab 3 7.0 Lite
    Nach meinem Verständnis läuft das so ab.
     
    domino-bs bedankt sich.

Diese Seite empfehlen