AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung iOS Die IP-Adresse des iPhone herausfinden
Thema durchsuchen
Ansicht
Themen-Optionen

Die IP-Adresse des iPhone herausfinden

Ein Thema von Daniel · begonnen am 24. Apr 2013 · letzter Beitrag vom 23. Mai 2013
Antwort Antwort
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#1

Die IP-Adresse des iPhone herausfinden

  Alt 24. Apr 2013, 16:22
Moin,


sollte jemand ein dringendes Bedürfnis verspüren - nämlich das, die IP-Adresse seines iPhones herauszufinden, wenn es sich in einem WLAN befindet, dann könnte folgender Code (Delphi XE4) hilfreich sein:

Delphi-Quellcode:
uses Idstack, IdGlobal;

procedure TForm2.Button1Click(Sender: TObject);
var
  gs : TIdStack;
  IPs: TStringList;
  IP: String;
  I: Integer;
  Err: Boolean;
begin
  TIdStack.IncUsage;

  IPs := TStringList.Create;
  try
    GStack.AddLocalAddressesToList(IPs);
    for I := 0 to IPs.Count-1 do
    begin
      IP := IPs[I];
      Memo1.Lines.Add( IP );

      IPv4ToDWord(IP, Err);
      if not Err then
        Break;
      IP := '';
    end;
  finally
    IPs.Free;
  end;
  if IP <> 'then
  begin
    Memo1.Lines.Add( IP );
  end;
end;
Ganz wichtig:
Dieser Code stammt NICHT von mir, Remy Lebeau hat ihn auf stackoverflow veröffentlicht.
Gegenwärtig läuft der Code NUR auf dem iOS-Gerät selbst, der Simulator, der die Netzwerk-Infrastruktur von Mac verwendet, liefert hier einen ungültigen Host-Namen. Man wird das wohl noch etwas eleganter ausprogrammieren können, aber o.g. Code stellt schon mal einen Anfang dar.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#2

AW: Die IP-Adresse des iPhone herausfinden

  Alt 24. Apr 2013, 17:11
Dieser Code stammt NICHT von mir, Remy Lebeau hat ihn auf stackoverflow veröffentlicht.
Da wäre wohl ein Link angebracht
Ich nehme mal an, diese Antwort ist es.
Intellekt ist das Verstehen von Wissen. Verstehen ist der wahre Pfad zu Einsicht. Einsicht ist der Schlüssel zu allem.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Die IP-Adresse des iPhone herausfinden

  Alt 24. Apr 2013, 17:16
Eine Sache ist mir dabei noch unklar:

Wenn ich im Mac OS X einen Terminal öffne, wird mir der Hostname mit "lappy.fritz.box" abgezeigt. "lappy" ist mein Laptop und hängt aktuell per WLAN an der Fritz-Box. Ein Ping auf "lappy.fritz.box" wird mit "unknown host" beantwortet. Ein Ping auf "fritz.box" geht tadellos und danach (!) geht auch ein Ping auf "lappy.fritz.box". Der oben genannten Code läuft hier nun fehlerfrei auf Win32, Mac OS X und iOS - wenigstens im Moment.

Alle beteiligen Geräte laufen schon seit Stunden und sind ebenso lang miteinander im Netzwerk verbunden. Andere Störfaktoren gibt es nicht - und ich kann aktuell nicht erklären, warum der Ping mal geht und mal nicht.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#4

AW: Die IP-Adresse des iPhone herausfinden

  Alt 24. Apr 2013, 17:17
Gegenwärtig läuft der Code NUR auf dem iOS-Gerät selbst, der Simulator, der die Netzwerk-Infrastruktur von Mac verwendet, liefert hier einen ungültigen Host-Namen. Man wird das wohl noch etwas eleganter ausprogrammieren können, aber o.g. Code stellt schon mal einen Anfang dar.
Remy Lebeau hat in den heutigen Releaseinformationen zu Indy 10.6 geplante tiefgehende Änderungen im Bereich GetLocalIPAddress(es) beschrieben, die dieses Problem eventuell beheben:

Zitat:
The TIdStack.LocalAddress(es) properties will eventually be replaced
in a future release with a new TIdStack.GetLocalAddressList() method that
uses platform-appropriate native OS functions instead of reverse DNS lookups
to determine local IPs, differentiates between IPv4 and IPv6 addresses, and
reports local subnet masks and possibly subnet broadcast IPs.
Michael Justin
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Die IP-Adresse des iPhone herausfinden

  Alt 24. Apr 2013, 17:28
ich bekommen auf iPad & iPhone immer den Fehler:
nodename nor servname provided, or not known(8)

Mavarik
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Die IP-Adresse des iPhone herausfinden

  Alt 24. Apr 2013, 17:36
Okay, der Code greift sich den Hostnamen des Gerätes, auf dem er läuft und versucht dann, dessen IP zu ermitteln. Das ist der Knackpunkt: Wenn im lokalen Netzwerk so ein Name nicht aufgelöst werden kann, gibt es den beschriebenen Fehler.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
elvispresley

Registriert seit: 20. Mai 2013
4 Beiträge
 
#7

AW: Die IP-Adresse des iPhone herausfinden

  Alt 23. Mai 2013, 17:08
Okay, der Code greift sich den Hostnamen des Gerätes, auf dem er läuft und versucht dann, dessen IP zu ermitteln. Das ist der Knackpunkt: Wenn im lokalen Netzwerk so ein Name nicht aufgelöst werden kann, gibt es den beschriebenen Fehler.
und wie macht man das nun, damit das auf einem iphone funktioniert. wie bereits erwähnt funktioniert das auf dem simulator ohne probleme aber auf dem ios kommt die fehlermeldung.
hat jedmand den richtigen code, wie das auf dem gerät funktioniert?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz