tsunami
Goto Top

App aus Webanwendung

Hallo zusammen,
gibt es eine Software/Webservice oä, welches aus einer Webanwendung eine App für Android macht?

Zum Hintergrund: Ich habe zwischendurch eine kleine Anwendung geschrieben. Die funktioniert am PC wunderbar.
Nun sollen die Daten aber am Smartphone erfasst werden. Sei es ein Foto, ein Mangel oder sonstwas.

Die Idee ist: EInmal einloggen. Uhrzeit, Datum und Benutzer sind damit vorhanden. Foto machen, Kurzer Text.
Was weiß ich WC Deckel Damenklo 1. OG defekt.

Am Server sieht dann zB der Facility Manager: Am 29.10.24 um 10:11 Uhr hat Claudia Schiffer einen defekten Klodeckel in der Damentoilette im 1. OG gemeldet. Lt Foto ist das ein Orpus Deckel. Haumeister hinschicken und tauschen.

Die Oberfläche für das Erfassungsformular ist simples HTML und Css bzw. php und css. Schön wäre es wenn man das Ganze importieren könnte, Konfik hinterlegen für Server URL und dann Speichern als APK.

Gibt es sowas?
Gruß
tsunami

Content-ID: 669103

Url: https://administrator.de/contentid/669103

Ausgedruckt am: 31.10.2024 um 10:10 Uhr

stacktrace
stacktrace 29.10.2024 um 10:55:37 Uhr
Goto Top
Moin,

das könntest Du dir selbst erstellen via Android Studio. Via Webview könntest Du deine HTML-Files in der App laden.
Alles drum herum (Auth etc.) müsstest Du noch hinzubasteln.

activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:layout_width="match_parent"  
    android:layout_height="match_parent">  

    <WebView
        android:id="@+id/webView"  
        android:layout_width="match_parent"  
        android:layout_height="match_parent" />  
</RelativeLayout>


MainActivity.java
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        WebView webView = findViewById(R.id.webView);
        WebSettings webSettings = webView.getSettings();
        webSettings.setJavaScriptEnabled(true); // Falls JavaScript benötigt wird

        // HTML-Inhalt als String
        String htmlContent = "<html><body><h1>Hallo Welt!</h1><p>Dies ist benutzerdefinierter HTML-Inhalt.</p></body></html>";  
        webView.loadData(htmlContent, "text/html", "UTF-8");  

        // Oder lade HTML-Datei aus dem Assets-Ordner:
        // webView.loadUrl("file:///android_asset/deine_datei.html");  
    }
}

Mit Unterstützung von ChatGPT. Ungetestet. So oder so ähnlich klappt dies aber.

Gruß
catrell
catrell 29.10.2024 aktualisiert um 11:00:36 Uhr
Goto Top
Moin.
Wieso extra ne App wenn es schon eine Webseite gibt, Link verteilen und fertig. Apps bringen erst Mehrwert wenn man dessen APIs nutzt um direkt auf Ressourcen des Smartphones zuzugreifen.
Ansonsten findest du diverse Frameworks dafür: https://www.google.com/search?q=Android+App+from+Website

Gruß catrell
tsunami
tsunami 29.10.2024 um 11:04:36 Uhr
Goto Top
@catrell. Die Kamera, Uhrzeit etc. Zudem habe ich den Quellcode geschützt.
Der Dau muss nur die App aufrufen und nicht Browser -> URL -> Einloggen ...
Dann wird das Lesezeichen gelöscht usw..
wiesi200
wiesi200 29.10.2024 um 11:59:47 Uhr
Goto Top
Zitat von @tsunami:

@catrell. Die Kamera, Uhrzeit etc. Zudem habe ich den Quellcode geschützt.
Hallo,
Die Uhrzeit bekommst du eigentlich vom Server.
Der Kamerazugriff ist eigentlich schon browserseitig umgesetzt sobald du eine Upload Funktion einbaust. Da muss man garnichts machen.

Und das mit Browser -> URL usw. Einfach auf Homebildschirm speichern und gut ist.
Quellcode geschützt. Du hast ja eh nur das bisschen HTML für die Seite und etwas Javascript. Der PHP Teil ist doch eh nicht sichtbar. Und das einloggen kann man auch über PHP Sessions schön lösen.

Und Vorteil, wenn du was änderst brauchst du nichts ausrollen. Alle arbeiten immer mit der selben aktuellen Version.

Ernsthaft ich verstehe deinen APP Gedanken auch nicht.