updated and connected webview to C#

This commit is contained in:
2026-03-28 05:18:05 -04:00
parent a5772d7579
commit 0bb3aa28b1
8 changed files with 411 additions and 21 deletions

View File

@@ -40,6 +40,7 @@ public partial class MainPage : ContentPage
_wsc.Send($"REGISTER_KEY|{_username}|{publicKey}");
_wsc.Send("GET_SERVER_KEY");
_wsc.Send("GET_CHANNELS");
hybridWebView.SetInvokeJavaScriptTarget(this);
}
@@ -305,4 +306,72 @@ public partial class MainPage : ContentPage
ViewSwapped.Text = "Swap to Web View";
}
}
private void OnSendMessageButtonClicked(object sender, EventArgs e)
{
hybridWebView.SendRawMessage($"Hello from C#!");
}
private async void OnHybridWebViewRawMessageReceived(object sender, HybridWebViewRawMessageReceivedEventArgs e)
{
await DisplayAlertAsync("Raw Message Received", e.Message, "OK");
}
#region syncs
public async void DoSyncWork()
{
await DisplayAlertAsync("Sync Work", "Sync Work", "OK");
}
public async void DoSyncWorkParams(int i, string s)
{
await DisplayAlertAsync("Sync Work", $"{i}:{s}", "OK");
}
public string DoSyncWorkReturn()
{
return "Hello from C#!";
}
public SyncReturn DoSyncWorkParamsReturn(int i, string s)
{
return new SyncReturn
{
Message = $"Hello from C#! {s}",
Value = i
};
}
#endregion
#region asyncs
public async Task DoAsyncWork()
{
await Task.Delay(1000);
}
public async Task DoAsyncWorkParams(int i, string s)
{
await DisplayAlertAsync("Sync Work", $"{i}:{s}", "OK");
}
public async Task<string> DoAsyncWorkReturn()
{
return "Hello from C#!";
}
public async Task<SyncReturn> DoAsyncWorkParamsReturn(int i, string s)
{
await Task.Delay(1000);
return new SyncReturn
{
Message = $"Hello from C# ASync! {s}",
Value = i
};
}
#endregion
public class SyncReturn
{
public string? Message { get; set; }
public int Value { get; set; }
}
}