Xamarin Android Statusbar ausblenden?

  • Xamarin.Android

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Fakiz.

    Xamarin Android Statusbar ausblenden?

    Guten Abend,
    ich arbeite gerade an einer "Kioskapp". Bei dieser müsste ich die Statusbar ausblenden. Ich kann leider nicht die SystemUi App schließen, da ich auf die Softbutton angewiesen bin.
    Leider bin ich im Internet nicht wirklich fündig geworden. Eventuell hat jemand von euch ja schon soetwas realisiert oder einen möglichen Ansatz.
    Hab zwar noch nie mit Xamarin hantiert, mit Ecplise oder AndroidStudio bearbeitet man die styles.xml. Schau ob das auch mit Xamarin geht.

    XML-Quellcode

    1. <resources xmlns:android="http://schemas.android.com/apk/res/android">
    2. <!--
    3. Base application theme, dependent on API level. This theme is replaced
    4. by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
    5. -->
    6. <style name="AppBaseTheme" parent="android:Theme.Light">
    7. <!--
    8. Theme customizations available in newer API levels can go in
    9. res/values-vXX/styles.xml, while customizations related to
    10. backward-compatibility can go here.
    11. -->
    12. </style>
    13. <!-- Application theme. -->
    14. <style name="AppTheme" parent="AppBaseTheme">
    15. <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    16. <item name="android:windowFullscreen">true</item>
    17. <item name="android:windowActionBar">false</item>
    18. <item name="android:windowNoTitle">true</item>
    19. </style>
    20. </resources>

    And i think to myself... what a wonderfuL World!
    Immersive Fullscreen könnte das sein, was du suchst:
    developer.android.com/training/system-ui/immersive.html

    btw: so bin ichs auch von Apps wie dem PDF Reader gewohnt er zeigt mir das an, scrolle ich wird alles ausgeblendet tippe ich auf die Stelle wo NavigationBar etc. ist zeigt er sie mir.
    Software being "Done" is like lawn being "Mowed". (Jim Benson)
    schonmal Fullscreen getestet?

    Ja die App läuft bereits im Immersive Fullscreen.

    ...bearbeitet man die styles.xml. Schau ob das auch mit Xamarin geht.

    Eine style.xml ist bereits vorhanden.

    Spoiler anzeigen

    XML-Quellcode

    1. <resources>
    2. <style name="WithTitleBar" parent="@android:style/Theme.Holo.Light">
    3. </style>
    4. <style name="WithOutTitleBar" parent="@android:style/Theme.Holo.Light.NoActionBar">
    5. </style>
    6. </resources>


    Bei Fullscreen lässt sich ja leider die Statusbar bei einem Swipe wieder einblenden. Dadurch hat der Benutzer die Möglichkeit den Homescreen zu ändern und somit aller hand mist mit dem Tablet anzustellen. Ich habe schon mit dem Gedanken gespielt die SystemUI zu schließen und an stelle der NavigationBar eine selbst erstellte zu platzieren. Allerdings sieht mir das ganze eher nach einer Dampfhammer Methode aus.
    Die meisten Kioskapps machen das indem sie sich selber als Launcher ausgeben und dann den Standart wiederherstellen wenn man den Modus deaktiviert.

    Edit: Lücke hier: Abgesicherter Modus etc.... (kann man mit nem Costum Rom wieder unterbinden)

    Lg Mokki
    ​Smartnotr - ein intelligentes Notizprogramm
    zum Thread

    Du möchtest den User sogesehen aus dem Gerät ausschließen?

    Genau ausser dem Admin sollen alle Benutzer nur Zugriff auf die App haben.

    Die meisten Kioskapps machen das indem sie sich selber als Launcher ausgeben und dann den Standart wiederherstellen wenn man den Modus deaktiviert.

    So ist es, die App läuft als Home Launcher. Schließt man die App wird sie umgehend neu gestartet solange diese als Home Launcher eingestellt ist. Das lässt sich allerdings recht leicht umgehen wenn man Zugriff auf die Statusbar hat. Der Nutzer soll nur Zugriff auf die NavigationButtons haben, über diese kommt man in die Passwort geschützten Einstellungen in der der Admin sich austoben kann. Bei mehrmaligem Fehlschlagen des Logins wird hier ein HilfeRuf getätigt so das ein Mitarbeiter direkt informiert wird.

    Lücke hier: Abgesicherter Modus etc.... (kann man mit nem Costum Rom wieder unterbinden)

    Das ist für mich nicht wirklich relevant, alle Tablets sind fest montiert und nicht gerootet. Ein Angreifer müsste hier erheblichen Aufwand betreiben (Downgrade, Root, ect).

    *Edit*
    Ich habe schon mit dem Gedanken gespielt die SystemUI zu schließen und an stelle der NavigationBar eine selbst erstellte zu platzieren.

    Dieses Vorgehen ist leider nicht möglich, hierfür ist ein gerootetes Gerät nötig.
    Am meisten Sinn macht im Moment eine Viewgroup über die Statusbar zu legen und TouchEvents mit dieser Abzufangen. Für weitere Vorschläge bin ich allerdings nach wie vor offen.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Fakiz“ ()