Offline Patch

This commit is contained in:
Thorbjoern
2025-07-22 21:58:54 +02:00
parent e74f994a8a
commit 1e8853d8c3
3 changed files with 14 additions and 9 deletions
@@ -53,7 +53,9 @@ namespace GhostSystem
private void Start() private void Start()
{ {
_offlinePath = Path.Combine(Application.persistentDataPath, "offline_log.jsonl"); string now = DateTime.Now.ToString("yyyyMMdd_HHmmss");
string dateiname = now + ".jsonl";
_offlinePath = Path.Combine(Application.persistentDataPath, dateiname);
} }
private void HandleSupabaseReady() private void HandleSupabaseReady()
@@ -116,13 +118,15 @@ namespace GhostSystem
private async UniTaskVoid FlushBatchAsync() // Die eigentliche Methode zum Hochladen eines Batches/leeren des Buffers. private async UniTaskVoid FlushBatchAsync() // Die eigentliche Methode zum Hochladen eines Batches/leeren des Buffers.
{ {
if (_frameBuffer.Count == 0 || !supabaseReady) return; if (_frameBuffer.Count == 0) return;
var batch = new List<FrameModel>(_frameBuffer); var batch = new List<FrameModel>(_frameBuffer);
_frameBuffer.Clear(); _frameBuffer.Clear();
Debug.Log("Flushing Frame Buffer"); Debug.Log("Flushing Frame Buffer");
try await FallbackToOfflineAsync(batch);
OnUploadFinished?.Invoke(); // Die Action für das Ende des Ladescreens wird trotzdem ausgelöst.
/*try
{ {
var response = await SupabaseManager.instance.supabase.From<FrameModel>().Insert(batch); // Versucht, den Batch an Superbase hochzuladen var response = await SupabaseManager.instance.supabase.From<FrameModel>().Insert(batch); // Versucht, den Batch an Superbase hochzuladen
if (!response.ResponseMessage.IsSuccessStatusCode) if (!response.ResponseMessage.IsSuccessStatusCode)
@@ -145,7 +149,7 @@ namespace GhostSystem
await FallbackToOfflineAsync(batch); // Bei nicht erfolgtem Upload wird der Batch lokal gescpeichert. await FallbackToOfflineAsync(batch); // Bei nicht erfolgtem Upload wird der Batch lokal gescpeichert.
OnUploadFinished?.Invoke(); // Die Action für das Ende des Ladescreens wird trotzdem ausgelöst. OnUploadFinished?.Invoke(); // Die Action für das Ende des Ladescreens wird trotzdem ausgelöst.
Debug.Log("Upload Finished"); Debug.Log("Upload Finished");
} }*/
} }
private async UniTask FallbackToOfflineAsync(List<FrameModel> batch) // Schreibt den Buffer in eine Datei, falls Upload nicht möglich private async UniTask FallbackToOfflineAsync(List<FrameModel> batch) // Schreibt den Buffer in eine Datei, falls Upload nicht möglich
@@ -48,9 +48,9 @@ namespace GhostSystem
} }
Debug.Log("🌐 Starting Supabase setup..."); Debug.Log("🌐 Starting Supabase setup...");
await RunDiagnostics(); //await RunDiagnostics();
await InitSupabaseAsync(); //await InitSupabaseAsync();
OnSuperbaseReady?.Invoke(); OnSuperbaseReady?.Invoke();
} }
@@ -141,6 +141,7 @@ namespace GhostSystem
} }
else else
{ {
//textbox.text += $"\n\rSupabase health check failed: {www.error}"; //textbox.text += $"\n\rSupabase health check failed: {www.error}";
Debug.LogError($"❌ Supabase health check failed: {www.error}"); Debug.LogError($"❌ Supabase health check failed: {www.error}");
} }
+3 -3
View File
@@ -13,7 +13,7 @@ PlayerSettings:
useOnDemandResources: 0 useOnDemandResources: 0
accelerometerFrequency: 60 accelerometerFrequency: 60
companyName: TH companyName: TH
productName: RoomAware VR productName: RoomAware VR Fully Offline
defaultCursor: {fileID: 0} defaultCursor: {fileID: 0}
cursorHotspot: {x: 0, y: 0} cursorHotspot: {x: 0, y: 0}
m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1} m_SplashScreenBackgroundColor: {r: 0.13725491, g: 0.12156863, b: 0.1254902, a: 1}
@@ -167,7 +167,7 @@ PlayerSettings:
androidMaxAspectRatio: 2.4 androidMaxAspectRatio: 2.4
androidMinAspectRatio: 1 androidMinAspectRatio: 1
applicationIdentifier: applicationIdentifier:
Android: com.TH.RoomAwareVR Android: com.TH.RoomAwareVRFullyOffline
Standalone: com.DefaultCompany.VR-Multiplayer Standalone: com.DefaultCompany.VR-Multiplayer
iPhone: com.Unity-Technologies.com.unity.template.urp-blank iPhone: com.Unity-Technologies.com.unity.template.urp-blank
buildNumber: buildNumber:
@@ -184,7 +184,7 @@ PlayerSettings:
stripEngineCode: 1 stripEngineCode: 1
iPhoneStrippingLevel: 0 iPhoneStrippingLevel: 0
iPhoneScriptCallOptimization: 0 iPhoneScriptCallOptimization: 0
ForceInternetPermission: 1 ForceInternetPermission: 0
ForceSDCardPermission: 0 ForceSDCardPermission: 0
CreateWallpaper: 0 CreateWallpaper: 0
androidSplitApplicationBinary: 0 androidSplitApplicationBinary: 0