Skip to content

Commit a25dfd0

Browse files
ComputerEliteComputerElite
authored andcommitted
look at this. login working but rip UI
1 parent 6013812 commit a25dfd0

3 files changed

Lines changed: 11 additions & 81 deletions

File tree

QuestAppVersionSwitcher/Properties/AndroidManifest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
2-
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="1.13.12" package="com.ComputerElite.questappversionswitcher" android:installLocation="preferExternal" android:versionCode="95">
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="1.13.13" package="com.ComputerElite.questappversionswitcher" android:installLocation="preferExternal" android:versionCode="96">
33
<uses-sdk android:minSdkVersion="28" android:targetSdkVersion="32" />
44
<uses-permission android:name="oculus.permission.handtracking" />
55
<uses-permission android:name="com.oculus.permission.HAND_TRACKING" />

QuestAppVersionSwitcher/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@
2222
// Minor Version
2323
// Build Number
2424
// Revision
25-
[assembly: AssemblyVersion("1.13.12.0")]
26-
[assembly: AssemblyFileVersion("1.13.12.0")]
25+
[assembly: AssemblyVersion("1.13.13.0")]
26+
[assembly: AssemblyFileVersion("1.13.13.0")]

QuestAppVersionSwitcher/WebServer.cs

Lines changed: 8 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,20 @@ public class QAVSWebViewClient : WebViewClient
5656
public override void OnPageFinished(WebView view, string url)
5757
{
5858
CookieManager.Instance.Flush();
59-
if(!url.ToLower().Contains("localhost") && !url.ToLower().Contains("http://127.0.0.1"))
59+
if(!url.ToLower().Contains("localhost") && !url.ToLower().StartsWith("https://auth.meta.com") && !url.ToLower().Contains("http://127.0.0.1"))
6060
{
6161
if (injectedJs == "")
6262
{
6363
// Load qavs_inject.js
6464
injectedJs = new StreamReader(AndroidCore.assetManager.Open("html/qavs_inject.js")).ReadToEnd();
6565
}
66-
//view.EvaluateJavascript(injectedJs, null);
66+
view.EvaluateJavascript(injectedJs.Replace("{0}", CoreService.coreVars.serverPort.ToString()), null);
67+
}
68+
69+
if (url.ToLower().StartsWith("https://auth.meta.com/settings/account/"))
70+
{
71+
// redirect to oculus page
72+
view.LoadUrl("https://oculus.com/experiences/quest");
6773
}
6874
}
6975

@@ -83,82 +89,6 @@ public override void OnPageFinished(WebView view, string url)
8389

8490
public override WebResourceResponse ShouldInterceptRequest(WebView view, IWebResourceRequest request)
8591
{
86-
string url = request.Url.ToString();
87-
if ((url.StartsWith("https://auth.meta.com/") || url.StartsWith("https://meta.com/") || url.StartsWith("https://facebook.com/") || url.StartsWith("https://oculus.com/") || url.StartsWith("https://auth.oculus.com/")))
88-
{
89-
if (request.Method == "GET")
90-
{
91-
// Handle response header injection by doing manual request with headers provided by request
92-
// This is done because the webview doesn't allow you to modify response headers
93-
HttpWebRequest req = (HttpWebRequest) WebRequest.Create(url);
94-
req.Method = "GET";
95-
req.UserAgent = CoreService.ua;
96-
foreach (KeyValuePair<string,string> h in request.RequestHeaders)
97-
{
98-
Logger.Log(h.Key + ": " + h.Value);
99-
if(h.Key.ToLower() == "user-agent") continue;
100-
else if (h.Key.ToLower() == "accept") req.Accept = h.Value;
101-
else if(h.Key.ToLower() == "referer") req.Referer = h.Value;
102-
else req.Headers[h.Key] = h.Value;
103-
}
104-
Logger.Log("Getting response");
105-
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
106-
Logger.Log("Getting response stream");
107-
Stream s = resp.GetResponseStream();
108-
MemoryStream ms = new MemoryStream();
109-
s.CopyTo(ms);
110-
byte[] data = ms.ToArray();
111-
ms.Close();
112-
s.Close();
113-
Logger.Log("Appending script tag");
114-
//string html = Encoding.UTF8.GetString(data);
115-
//html = html.Replace("</body>", "<script src=\"http://localhost:" + CoreService.coreVars.serverPort + "/inject.js\"></script></body>");
116-
//data = Encoding.UTF8.GetBytes(html);
117-
Logger.Log("Stream again");
118-
ms = new MemoryStream(data);
119-
120-
Logger.Log("Settings headers");
121-
Dictionary<string, string> headers = new Dictionary<string, string>();
122-
string toRemove = "require-trusted-types-for 'script';";
123-
Logger.Log(resp.ContentType);
124-
Logger.Log(resp.ContentEncoding);
125-
Logger.Log(((int)resp.StatusCode).ToString());
126-
Logger.Log(resp.StatusDescription);
127-
foreach (string key in resp.Headers.Keys)
128-
{
129-
string headerValue = resp.Headers[key];
130-
//headerValue = headerValue.Replace(toRemove, "");
131-
if (key.ToLower() == "content-security-policy")
132-
{
133-
//headerValue = resp.Headers[key].Replace("auth.meta.com", "auth.meta.com http://localhost:" + CoreService.coreVars.serverPort);
134-
}
135-
headers.Add(key, headerValue);
136-
}
137-
Logger.Log("Creating wrr");
138-
string encoding = resp.ContentEncoding;
139-
if (encoding == "")
140-
{
141-
if (resp.ContentType.Contains("charset"))
142-
{
143-
encoding = resp.ContentType.Split(';').First(x => x.Contains("charset")).Split('=')[1].Replace("\"", "");
144-
}
145-
else encoding = "utf-8";
146-
}
147-
148-
if (resp.ContentType.Split(';')[0] != "text/html")
149-
{
150-
// Handle request normally
151-
return base.ShouldInterceptRequest(view, request);
152-
}
153-
Logger.Log("Doing manual request for " + url);
154-
WebResourceResponse wrr = new WebResourceResponse(resp.ContentType.Split(';')[0], encoding, (int)resp.StatusCode, resp.StatusDescription, headers, ms);
155-
156-
157-
return wrr;
158-
}
159-
}
160-
161-
16292
return base.ShouldInterceptRequest(view, request);
16393

16494
foreach (KeyValuePair<string, string> p in headers)

0 commit comments

Comments
 (0)