Signalstärke, Cell ID etc.

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • chrizstone schrieb:

    Es gibt übrigens doch ne Möglichkeit um die Signalstärke etc. auszulesen...wie gut das ihr so toll informiert seid :D

    Ach, und wo, du Klugscheißer?
    Da liest jemand irgendwelche UI-Elemente aus und will darüber Rückschlüsse über die Signalstärke machen.
    Das ist so als würde man sich auf die Geschwindigkeitsanzeige des GPS verlassen anstatt auf's Tacho zu sehen.
    Erschwerend hinzu kommt, dass das Private API ist.

    Aber schön, dass du so unendlich klug bist und in Zukunft alles allein regeln kannst. :)
    /ignore
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Lucas de Vil schrieb:

    chrizstone schrieb:

    Es gibt übrigens doch ne Möglichkeit um die Signalstärke etc. auszulesen...wie gut das ihr so toll informiert seid :D

    Ach, und wo, du Klugscheißer?
    Da liest jemand irgendwelche UI-Elemente aus und will darüber Rückschlüsse über die Signalstärke machen.
    Das ist so als würde man sich auf die Geschwindigkeitsanzeige des GPS verlassen anstatt auf's Tacho zu sehen.
    Erschwerend hinzu kommt, dass das Private API ist.

    Aber schön, dass du so unendlich klug bist und in Zukunft alles allein regeln kannst. :)
    /ignore

    *zustimm*
  • Das ist doch bloß die Headerdatei dazu.
    In der Methode, die so seinerzeit auch auf StackOverflow rumgeisterte, wird die Statusbar geladen, jedes Subview überprüft ob es der Klasse 'UIStatusBarDataNetworkItemView' entspricht und anschließend dann über dynamisches Typing nach dem gewünschten Wert befragt.
    Eigentlich ziemlich simpel, aber:
    - keine Schnittstelle zur Hardware bzw. damit zu den Hardwareinfos und damit im besten Falle ungenau
    - privat

    In dem Fall kann der User auch einfach selbst nach oben rechts gucken welche Qualität er da hat.
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Der Kommentar sagt:
    // from UIStatusBarServerThread

    C-Quellcode

    1. - (void)addMeasure {
    2. if(locationManager.location == nil) return;
    3. StatusBarData *statusBarData = (StatusBarData *)[UIStatusBarServer getStatusBarData];
    4. Measure *m = [Measure measureWithStatusBarData:(StatusBarData *)statusBarData location:locationManager.location];
    5. [self didReceiveMeasure:m];
    6. }
    7. // snip
    8. + (struct { BOOL x1[22]; BOOL x2[64]; int x3; int x4; BOOL x5[100]; BOOL x6[100]; BOOL x7[100]; BOOL x8[1024]; unsigned int x9; int x10; int x11; unsigned int x12; int x13; unsigned int x14; BOOL x15[150]; int x16; int x17; unsigned int x18 : 1; unsigned int x19 : 1; BOOL x20[256]; unsigned int x21 : 1; unsigned int x22 : 1; unsigned int x23 : 1; }*)getStatusBarData;
    9. // snap
    10. - (void)statusBarServer:(id)arg1 didReceiveStatusBarData:(StatusBarData *)statusBarData withActions:(NSInteger)arg3 {
    11. NSLog(@"-- statusBarServer:didReceiveStatusBarData:withActions:");
    12. //
    13. // NSLog(@"-- actions: %d", arg3);
    14. if(locationManager.location == nil) return;
    15. [self addMeasureFromStatusBarServerData:statusBarData];
    16. }
    Alles anzeigen

    und den dazu gehörigen UIStatusBarServerDelegate.

    Also: alles über das View.
    Damit lässt er sich über Änderungen des UIStatusBar informieren und fügt dann einfach ne neue Messung hinzu.
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Ja. Und?
    Trotzdem gibt jemand die raw Signal-Staerke zurueck, oder? Scheinbar ein Apple-interner Prozess?

    Von daher passt Dein Vergleich gar nicht (abgesehen davon, dass das GPS deutlich genauer als das Tacho ist, was Geschwindigkeit angeht!). Es ist eher, anstelle direkt an den Raedern die Geschwindigkeit abzugreifen, sie an den Daten, die das Tacho zum Darstellen verwendet, abzugreifen.

    Was auch immer.
    C++
  • zerm schrieb:

    Ja. Und?
    Trotzdem gibt jemand die raw Signal-Staerke zurueck, oder? Scheinbar ein Apple-interner Prozess?

    Da es ein Appleinterner Prozess ist gibt jemand etwas zurück, dass er für die Raw-Signalstärke zu einem bestimmten Zeitpunkt hielt.
    Dieser Jemand ist zufällig der UIStatusBarServer. Wie der Name vermuten lässt schiebt er der UIStatusBar die Informationen unter, die es anzeigen soll.

    Ich bleibe bei Tacho und GPS. Trete ich auf die Bremse, geht der Tacho signifikant runter. Trete ich danach aufs Gas, geht der Tacho signifikant hoch.
    Die Geschwindigkeit gemäß GPS kann in dieser Zeitspanne jedoch als durchgehend unverändert angezeigt worden sein.

    Nehmen wir einen Abbruch von ungefähr einer halben Millisekunde - zeigt das StatusBar Item das an? Vermutlich nicht.
    Feuert der Server die Delegate-Methode seines Clients? Vermutlich.
    Bekommt der Client dann auf seine Anfrage den Abbruch noch mit? Vermutlich nicht.

    Entweder man will es genau wissen, dann ist der Umweg über UIStatusBar unbrauchbar.
    Oder man will es ungefähr wissen, dann kann man den User auch auf die UIStatusBar schauen lassen.

    Mir fällt dafür kein sinnvoller Anwendungsfall ein - nach wie vor. ;)
    Logging entfällt, weil es ja genau sein soll. :P
    Und einen Fullscreen-Mode bereit zu stellen, der dann aber noch Verbindungstyp, Signalstärke und Akkustand anzeigen soll ist albern - da kann man den Fullscreen-Mode weglassen.

    Aber ich sehe ja schon ein, dass du gern spielen und basteln möchtest ohne einen wirklichen Mehrwert davon zu erwarten.
    Dafür ist das sicherlich zu gebrauchen, wenngleich: nicht storefähig da private API.
    «Applejack» "Don't you use your fancy mathematics to muddle the issue!"

    Iä-86! Iä-64! Awavauatsh fthagn!

    kmr schrieb:

    Ach, Du bist auch so ein leichtgläubiger Zeitgenosse, der alles glaubt, was irgendwelche Typen vor sich hin brabbeln. :-P
  • Lucas de Vil schrieb:

    zerm schrieb:



    Ja. Und?
    Trotzdem gibt jemand die raw Signal-Staerke zurueck, oder? Scheinbar ein Apple-interner Prozess?
    Da es ein Appleinterner Prozess ist gibt jemand etwas zurück, dass er für die Raw-Signalstärke zu einem bestimmten Zeitpunkt hielt.
    Dieser Jemand ist zufällig der UIStatusBarServer. Wie der Name vermuten lässt schiebt er der UIStatusBar die Informationen unter, die es anzeigen soll.

    Ich bleibe bei Tacho und GPS. Trete ich auf die Bremse, geht der Tacho signifikant runter. Trete ich danach aufs Gas, geht der Tacho signifikant hoch.
    Die Geschwindigkeit gemäß GPS kann in dieser Zeitspanne jedoch als durchgehend unverändert angezeigt worden sein.

    Nehmen wir einen Abbruch von ungefähr einer halben Millisekunde - zeigt das StatusBar Item das an? Vermutlich nicht.
    Feuert der Server die Delegate-Methode seines Clients? Vermutlich.
    Bekommt der Client dann auf seine Anfrage den Abbruch noch mit? Vermutlich nicht.

    Entweder man will es genau wissen, dann ist der Umweg über UIStatusBar unbrauchbar.
    Oder man will es ungefähr wissen, dann kann man den User auch auf die UIStatusBar schauen lassen.

    Mir fällt dafür kein sinnvoller Anwendungsfall ein - nach wie vor. ;)
    Logging entfällt, weil es ja genau sein soll. :P
    Und einen Fullscreen-Mode bereit zu stellen, der dann aber noch Verbindungstyp, Signalstärke und Akkustand anzeigen soll ist albern - da kann man den Fullscreen-Mode weglassen.

    Aber ich sehe ja schon ein, dass du gern spielen und basteln möchtest ohne einen wirklichen Mehrwert davon zu erwarten.


    Ok, da muss ich dir vollkommen recht geben! Wenn man es genau wissen will ist die Lösung die ich gefunden habe leider unbrauchbar! Sorry nochmal, ich wollte euch nicht schief von der Seite anmachen! Wollte euch nur darauf aufmerksam machen das es etws gibt was dem Nahe kommt was ich suche...

    Dafür ist das sicherlich zu gebrauchen, wenngleich: nicht storefähig da private API.


    Nicht storefähig ja, aber als eine Enterprise Lösung auf jeden Fall geeignet!