Implement Standalone Android App via Flutter WebView

- Configured `vite.config.ts` for relative base path support.
- Initialized `mobile_app` Flutter project with `webview_flutter`.
- Added `assets/www` to Flutter assets configuration.
- Implemented `mobile_app/lib/main.dart` with WebView and Bridge API integration (Water Level Slider).
- Updated `.gitignore` for Flutter artifacts.
- Successfully built APK artifacts.

Co-authored-by: kliffdafunkfacekilla-arch <239708976+kliffdafunkfacekilla-arch@users.noreply.github.com>
This commit is contained in:
google-labs-jules[bot] 2026-01-30 05:30:18 +00:00
parent e938bc7802
commit e62f20b0d1
808 changed files with 111592 additions and 10 deletions

View file

@ -0,0 +1,36 @@
(window => {
const noTrack = window.localStorage.getItem("noTrack");
const {
screen: {width, height},
navigator: {language},
location: {hostname, pathname, search},
document: {referrer}
} = window;
const website = "4f6fd0ae-646a-4946-a9da-7aad63284e48";
const root = "https://fmg-stats.herokuapp.com";
const screen = `${width}x${height}`;
const url = `${pathname}${search}`;
const post = (url, data) => {
const req = new XMLHttpRequest();
req.open("POST", url, true);
req.setRequestHeader("Content-Type", "application/json");
req.send(JSON.stringify(data));
};
const collect = (type, params) => {
if (noTrack) return;
const payload = {website, hostname, screen, language, cache: false};
Object.keys(params).forEach(key => {
payload[key] = params[key];
});
post(`${root}/api/collect`, {type, payload});
};
collect("pageview", {url, referrer});
window.track = (event_type = "reach", event_value = "") => collect("event", {event_type, event_value, url});
})(window);