Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f99c57eb60 | ||
|
|
d7074325f4 | ||
|
|
1ba6fe5260 | ||
|
|
ee6d62950d | ||
|
|
f8fb2b5483 | ||
|
|
164dc070bd | ||
|
|
7539b5c507 | ||
|
|
68be50b26e | ||
|
|
6cbe06f394 | ||
|
|
a9f2db6380 | ||
|
|
4a492ffcd2 |
10
ADB.cs
10
ADB.cs
@@ -14,7 +14,7 @@ namespace AndroidSideloader
|
||||
class ADB
|
||||
{
|
||||
static Process adb = new Process();
|
||||
public static string adbFolderPath = "C:\\RSL\\2.8.2\\ADB";
|
||||
public static string adbFolderPath = "C:\\RSL\\platform-tools";
|
||||
public static string adbFilePath = adbFolderPath + "\\adb.exe";
|
||||
public static string DeviceID = "";
|
||||
public static string package = "";
|
||||
@@ -91,10 +91,6 @@ namespace AndroidSideloader
|
||||
public static ProcessOutput RunAdbCommandToStringWOADB(string result, string path)
|
||||
{
|
||||
string command = result;
|
||||
Properties.Settings.Default.ADBFolder = adbFolderPath;
|
||||
Properties.Settings.Default.ADBPath = adbFilePath;
|
||||
Properties.Settings.Default.Save();
|
||||
|
||||
string logcmd = command;
|
||||
if (logcmd.Contains(Environment.CurrentDirectory))
|
||||
logcmd = logcmd.Replace($"{Environment.CurrentDirectory}", $"CurrentDirectory");
|
||||
@@ -161,10 +157,6 @@ namespace AndroidSideloader
|
||||
public static ProcessOutput RunCommandToString(string result, string path = "")
|
||||
{
|
||||
string command = result;
|
||||
Properties.Settings.Default.ADBFolder = adbFolderPath;
|
||||
Properties.Settings.Default.ADBPath = adbFilePath;
|
||||
Properties.Settings.Default.Save();
|
||||
|
||||
string logcmd = command;
|
||||
if (logcmd.Contains(Environment.CurrentDirectory))
|
||||
logcmd = logcmd.Replace($"{Environment.CurrentDirectory}", $"CurrentDirectory");
|
||||
|
||||
@@ -1,4 +1,78 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
RSL 2.9.5
|
||||
Hotfix for online issue.
|
||||
-pmow
|
||||
|
||||
|
||||
RSL 2.9.4
|
||||
|
||||
= Changed install.txt logic to search
|
||||
for any .7z files and use Zip Extract
|
||||
function from GeneralUtilities, should
|
||||
fix version issues with users who have
|
||||
a newer 7zip installed than the 7zip
|
||||
exe included with install.txt games.
|
||||
|
||||
= Fully moved ADB folder to
|
||||
C:\RSL\platform-rools and removed
|
||||
adb folder from Rookie directory.
|
||||
Rookie will do this automatically upon
|
||||
first launch after updating. This will
|
||||
make updating to future versions of ADB
|
||||
much smoother. This should also fix issues
|
||||
caused by having multiple version of
|
||||
adb.exe clashing and fix AAPT issues as
|
||||
well.
|
||||
|
||||
= Updated 7z.exe and 7z.dll on Github.
|
||||
|
||||
HFP
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.9.4
|
||||
|
||||
= Changed install.txt logic to search
|
||||
for any .7z files and use Zip Extract
|
||||
function from GeneralUtilities, should
|
||||
fix version issues with users who have
|
||||
a newer 7zip installed than the 7zip
|
||||
exe included with install.txt games.
|
||||
|
||||
= Fully moved ADB folder to
|
||||
C:\RSL\platform-rools and removed
|
||||
adb folder from Rookie directory.
|
||||
Rookie will do this automatically upon
|
||||
first launch after updating. This will
|
||||
make updating to future versions of ADB
|
||||
much smoother. This should also fix issues
|
||||
caused by having multiple version of
|
||||
adb.exe clashing and fix AAPT issues as
|
||||
well.
|
||||
|
||||
= Updated 7z.exe and 7z.dll on Github.
|
||||
|
||||
HFP
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEsQnoACgkQx/Rql1Vo
|
||||
czeKPRAAi0l9Ti06d48p0vd6Rziw3mHLVXg5dDOZWyrNULu1Y8axnSCVnZOVduVD
|
||||
ftY0fVjTNNv7aU+fyWtH2Gr33CtJ6DvaQpj5RIsFiZpiTeDN3cOq2Ina55jtVvEl
|
||||
ZrBVlLdXtv/L/W3ltrMzc/sNnJhrEfBXq7lNDFMj7IT31miphRZ1X9pgIdqGIpdE
|
||||
gwcVxxkOu/5PXMzR3+eclpVePeagtJQNBH8dYUBQ9OziKObpzAfVYvoYS94MTYUY
|
||||
ZdoHP5tfXEsuW0tQ6G1dvGrIi+ty8EJWX3GS42mkPW6xlyKbSOdu/IQa4KFPmpkK
|
||||
7QwCMDzU5FgxJhg4+j35z/4BxJUzUHeTnp2xQYw/HE+GWdiJklIpZoOeqFQ+QLy/
|
||||
6jwyhqcPD7cni2HMrCi4HxT0GcuVV5jrqqBAtCHdecglH90EMBCS9DrvmZyw1JgA
|
||||
b9bCPQwWvVRLFw8HfiybiqVM98C2kW3TUsprGJOcnT6l1SzKlHEwiSMJSTVWshuu
|
||||
bG8Q19gfhKSLEjTdjKVYV9WDHp8it+lrF6ETdneP4kcSsLhigYSgz0AeETx62Ugh
|
||||
D13MyxcS6K9XqoRGy5Dr3gL/qkT0I5T6dsWL6vj9o317uexIO9sPkmrGTktbGUn1
|
||||
heW2jD324PwyuuPxxoqM1lVKVquUIS0Difx+cqlJHY0lWqIk/Ck=
|
||||
=lZeM
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.9.3
|
||||
|
||||
44
MainForm.cs
44
MainForm.cs
@@ -113,10 +113,12 @@ namespace AndroidSideloader
|
||||
Properties.Settings.Default.MainDir = Environment.CurrentDirectory;
|
||||
Properties.Settings.Default.Save();
|
||||
CheckForInternet();
|
||||
if (HasInternet == true)
|
||||
if (HasInternet == true) {
|
||||
Sideloader.downloadFiles();
|
||||
else
|
||||
}
|
||||
else {
|
||||
FlexibleMessageBox.Show("Cannot connect to google dns, your internet may be down, won't use rclone or online features!");
|
||||
}
|
||||
await Task.Delay(100);
|
||||
ADB.RunAdbCommandToString("kill-server");
|
||||
if (!String.IsNullOrEmpty(Properties.Settings.Default.IPAddress))
|
||||
@@ -336,7 +338,7 @@ namespace AndroidSideloader
|
||||
try
|
||||
{
|
||||
if (ProgressText.IsDisposed) return;
|
||||
this.Invoke(() => { oldTitle = txt; this.Text = "Rookie's Sideloader | " + txt; });
|
||||
this.Invoke(() => { oldTitle = txt; this.Text = "Rookie's Sideloader v" + Updater.LocalVersion + " | " + txt; });
|
||||
ProgressText.Invoke(() =>
|
||||
{
|
||||
if (!ProgressText.IsDisposed)
|
||||
@@ -345,7 +347,7 @@ namespace AndroidSideloader
|
||||
if (!reset)
|
||||
return;
|
||||
await Task.Delay(TimeSpan.FromSeconds(5));
|
||||
this.Invoke(() => { this.Text = "Rookie's Sideloader | " + oldTitle; });
|
||||
this.Invoke(() => { this.Text = "Rookie's Sideloader v" + Updater.LocalVersion + " | " + oldTitle; });
|
||||
ProgressText.Invoke(() =>
|
||||
{
|
||||
if (!ProgressText.IsDisposed)
|
||||
@@ -1008,7 +1010,7 @@ namespace AndroidSideloader
|
||||
string pathname = Path.GetDirectoryName(data);
|
||||
string filename = file2.Replace($"{pathname}\\", "");
|
||||
|
||||
string cmd = $"\"{Properties.Settings.Default.MainDir}\\adb\\aapt.exe\" dump badging \"{file2}\" | findstr -i \"package: name\"";
|
||||
string cmd = $"C:\\RSL\\platform-tools\\aapt.exe\" dump badging \"{file2}\" | findstr -i \"package: name\"";
|
||||
string cmdout = ADB.RunCommandToString(cmd, file2).Output;
|
||||
cmdout = Utilities.StringUtilities.RemoveEverythingBeforeFirst(cmdout, "=");
|
||||
cmdout = Utilities.StringUtilities.RemoveEverythingAfterFirst(cmdout, " ");
|
||||
@@ -1114,7 +1116,7 @@ namespace AndroidSideloader
|
||||
{
|
||||
string pathname = Path.GetDirectoryName(data);
|
||||
string dataname = data.Replace($"{pathname}\\", "");
|
||||
string cmd = $"\"{Properties.Settings.Default.MainDir}\\adb\\aapt.exe\" dump badging \"{data}\" | findstr -i \"package: name\"";
|
||||
string cmd = $"\"C:\\RSL\\platform-tools\\aapt.exe\" dump badging \"{data}\" | findstr -i \"package: name\"";
|
||||
string cmdout = ADB.RunCommandToString(cmd, data).Output;
|
||||
cmdout = Utilities.StringUtilities.RemoveEverythingBeforeFirst(cmdout, "=");
|
||||
cmdout = Utilities.StringUtilities.RemoveEverythingAfterFirst(cmdout, " ");
|
||||
@@ -1428,16 +1430,16 @@ namespace AndroidSideloader
|
||||
string apppath = ADB.RunAdbCommandToString($"shell pm path {newGamesToUpload}").Output;
|
||||
apppath = Utilities.StringUtilities.RemoveEverythingBeforeFirst(apppath, "/");
|
||||
apppath = Utilities.StringUtilities.RemoveEverythingAfterFirst(apppath, "\r\n");
|
||||
if (File.Exists($"C:\\RSL\\2.8.2\\ADB\\base.apk"))
|
||||
File.Delete($"C:\\RSL\\2.8.2\\ADB\\base.apk");
|
||||
if (File.Exists($"C:\\RSL\\platform-tools\\base.apk"))
|
||||
File.Delete($"C:\\RSL\\platform-tools\\base.apk");
|
||||
ADB.RunAdbCommandToString($"pull \"{apppath}\"");
|
||||
string cmd = $"\"{Properties.Settings.Default.MainDir}\\adb\\aapt.exe\" dump badging \"C:\\RSL\\2.8.2\\ADB\\base.apk\" | findstr -i \"application-label\"";
|
||||
string workingpath = $"{Properties.Settings.Default.MainDir}\\adb\\aapt.exe";
|
||||
string cmd = $"\"C:\\RSL\\platform-tools\\aapt.exe\" dump badging \"C:\\RSL\\platform-tools\\base.apk\" | findstr -i \"application-label\"";
|
||||
string workingpath = "C:\\RSL\\platform-tools\\aapt.exe";
|
||||
string ReleaseName = ADB.RunCommandToString(cmd, workingpath).Output;
|
||||
ReleaseName = Utilities.StringUtilities.RemoveEverythingBeforeFirst(ReleaseName, "'");
|
||||
ReleaseName = Utilities.StringUtilities.RemoveEverythingAfterFirst(ReleaseName, "\r\n");
|
||||
ReleaseName = ReleaseName.Replace("'", "");
|
||||
File.Delete($"C:\\RSL\\2.8.2\\ADB\\base.apk");
|
||||
File.Delete($"C:\\RSL\\platform-tools\\base.apk");
|
||||
//end
|
||||
|
||||
string GameName = Sideloader.gameNameToSimpleName(RlsName);
|
||||
@@ -1469,16 +1471,16 @@ namespace AndroidSideloader
|
||||
string apppath = ADB.RunAdbCommandToString($"shell pm path {newGamesToUpload}").Output;
|
||||
apppath = Utilities.StringUtilities.RemoveEverythingBeforeFirst(apppath, "/");
|
||||
apppath = Utilities.StringUtilities.RemoveEverythingAfterFirst(apppath, "\r\n");
|
||||
if (File.Exists($"C:\\RSL\\2.8.2\\ADB\\base.apk"))
|
||||
File.Delete($"C:\\RSL\\2.8.2\\ADB\\base.apk");
|
||||
if (File.Exists($"C:\\RSL\\platform-tools\\base.apk"))
|
||||
File.Delete($"C:\\RSL\\platform-tools\\base.apk");
|
||||
ADB.RunAdbCommandToString($"pull \"{apppath}\"");
|
||||
string cmd = $"\"{Properties.Settings.Default.MainDir}\\adb\\aapt.exe\" dump badging \"C:\\RSL\\2.8.2\\ADB\\base.apk\" | findstr -i \"application-label\"";
|
||||
string workingpath = $"{Properties.Settings.Default.MainDir}\\adb\\aapt.exe";
|
||||
string cmd = $"\"C:\\RSL\\platform-tools\\aapt.exe\" dump badging \"C:\\RSL\\platform-tools\\base.apk\" | findstr -i \"application-label\"";
|
||||
string workingpath = $"C:\\RSL\\platform-tools\\aapt.exe";
|
||||
string ReleaseName = ADB.RunCommandToString(cmd, workingpath).Output;
|
||||
ReleaseName = Utilities.StringUtilities.RemoveEverythingBeforeFirst(ReleaseName, "'");
|
||||
ReleaseName = Utilities.StringUtilities.RemoveEverythingAfterFirst(ReleaseName, "\r\n");
|
||||
ReleaseName = ReleaseName.Replace("'", "");
|
||||
File.Delete($"C:\\RSL\\2.8.2\\ADB\\base.apk");
|
||||
File.Delete($"C:\\RSL\\platform-tools\\base.apk");
|
||||
if (ReleaseName.Contains("Microsoft Windows"))
|
||||
ReleaseName = RlsName;
|
||||
//end
|
||||
@@ -1518,13 +1520,13 @@ namespace AndroidSideloader
|
||||
if (File.Exists($"{Properties.Settings.Default.MainDir}\\{game.Uploadgamename} v{game.Uploadversion}.zip"))
|
||||
File.Delete($"{Properties.Settings.Default.MainDir}\\{game.Uploadgamename} v{game.Uploadversion}.zip");
|
||||
string path = $"{Properties.Settings.Default.MainDir}\\7z.exe";
|
||||
string cmd = $"7z a \"{Properties.Settings.Default.MainDir}\\{game.Uploadgamename} v{game.Uploadversion}.zip\" .\\{game.Pckgcommand}\\*";
|
||||
string cmd = $"7z a \"{Properties.Settings.Default.MainDir}\\{game.Uploadgamename} v{game.Uploadversion} {game.Pckgcommand}.zip\" .\\{game.Pckgcommand}\\*";
|
||||
ChangeTitle("Zipping extracted application...");
|
||||
ADB.RunCommandToString(cmd, path);
|
||||
Directory.Delete($"{Properties.Settings.Default.MainDir}\\{game.Pckgcommand}", true);
|
||||
ChangeTitle("Uploading to drive, you may continue to use Rookie while it uploads.");
|
||||
RCLONE.runRcloneCommand(game.Uploadcommand);
|
||||
File.Delete($"{Properties.Settings.Default.MainDir}\\{game.Uploadgamename} v{game.Uploadversion}.zip");
|
||||
File.Delete($"{Properties.Settings.Default.MainDir}\\{game.Uploadgamename} v{game.Uploadversion} {game.Pckgcommand}.zip");
|
||||
|
||||
});
|
||||
t3.IsBackground = true;
|
||||
@@ -1574,7 +1576,7 @@ namespace AndroidSideloader
|
||||
progressBar.Style = ProgressBarStyle.Continuous;
|
||||
UploadGame game = new UploadGame();
|
||||
game.Pckgcommand = packagename;
|
||||
game.Uploadcommand = $"copy \"{Properties.Settings.Default.MainDir}\\{GameName} v{installedVersionInt}.zip\" RSL-gameuploads:";
|
||||
game.Uploadcommand = $"copy \"{Properties.Settings.Default.MainDir}\\{game.Uploadgamename} v{game.Uploadversion} {game.Pckgcommand}\" RSL-gameuploads:";
|
||||
game.Uploadversion = installedVersionInt;
|
||||
game.Uploadgamename = GameName;
|
||||
gamesToUpload.Add(game);
|
||||
@@ -2013,13 +2015,13 @@ without him none of this would be possible
|
||||
}
|
||||
|
||||
Debug.WriteLine(wrDelimiter);
|
||||
if (Directory.Exists($"{Environment.CurrentDirectory}\\{gameName}\\{packagename}"))
|
||||
if (Directory.Exists($"{Properties.Settings.Default.MainDir}\\{gameName}\\{packagename}"))
|
||||
{
|
||||
Thread obbThread = new Thread(() =>
|
||||
{
|
||||
|
||||
ChangeTitle($"Copying {packagename} obb to device...");
|
||||
output += ADB.RunAdbCommandToString($"push \"{Environment.CurrentDirectory}\\{gameName}\\{packagename}\" \"/sdcard/Android/obb\"");
|
||||
output += ADB.RunAdbCommandToString($"push \"{Properties.Settings.Default.MainDir}\\{gameName}\\{packagename}\" \"/sdcard/Android/obb\"");
|
||||
Program.form.ChangeTitle("");
|
||||
});
|
||||
obbThread.IsBackground = true;
|
||||
|
||||
@@ -53,14 +53,14 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
|
||||
ADB.WakeDevice();
|
||||
ProcessOutput output = new ProcessOutput();
|
||||
var commands = File.ReadAllLines(path);
|
||||
string currfolder = Path.GetDirectoryName(path);
|
||||
string[] zipz = Directory.GetFiles(currfolder, "*.7z", SearchOption.AllDirectories);
|
||||
foreach (string zip in zipz)
|
||||
{
|
||||
Utilities.Zip.ExtractFile($"{zip}", currfolder);
|
||||
}
|
||||
foreach (string cmd in commands)
|
||||
{
|
||||
if (cmd.Contains("7z.exe"))
|
||||
{
|
||||
Program.form.ChangeTitle($"Running {cmd}");
|
||||
Logger.Log($"Logging command: {cmd} from file: {path}");
|
||||
ADB.RunCommandToString(cmd, path);
|
||||
}
|
||||
if (cmd.StartsWith("adb"))
|
||||
{
|
||||
string replacement = "";
|
||||
@@ -196,9 +196,9 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
|
||||
{
|
||||
foreach (string[] game in SideloaderRCLONE.games)
|
||||
{
|
||||
if (gameName.Contains(game[SideloaderRCLONE.GameNameIndex]))
|
||||
if (gameName.Equals(game[SideloaderRCLONE.GameNameIndex]))
|
||||
return game[SideloaderRCLONE.PackageNameIndex];
|
||||
if (gameName.Contains(game[SideloaderRCLONE.ReleaseNameIndex]))
|
||||
if (gameName.Equals(game[SideloaderRCLONE.ReleaseNameIndex]))
|
||||
return game[SideloaderRCLONE.PackageNameIndex];
|
||||
}
|
||||
return gameName;
|
||||
@@ -208,7 +208,7 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
|
||||
{
|
||||
foreach (string[] game in SideloaderRCLONE.games)
|
||||
{
|
||||
if (gameName.Contains(game[SideloaderRCLONE.PackageNameIndex]))
|
||||
if (gameName.Equals(game[SideloaderRCLONE.PackageNameIndex]))
|
||||
return game[SideloaderRCLONE.ReleaseNameIndex];
|
||||
}
|
||||
return gameName;
|
||||
@@ -218,9 +218,9 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
|
||||
{
|
||||
foreach (string[] game in SideloaderRCLONE.games)
|
||||
{
|
||||
if (gameName.Contains(game[SideloaderRCLONE.GameNameIndex]))
|
||||
if (gameName.Equals(game[SideloaderRCLONE.GameNameIndex]))
|
||||
return game[SideloaderRCLONE.GameNameIndex];
|
||||
if (gameName.Contains(game[SideloaderRCLONE.ReleaseNameIndex]))
|
||||
if (gameName.Equals(game[SideloaderRCLONE.ReleaseNameIndex]))
|
||||
return game[SideloaderRCLONE.GameNameIndex];
|
||||
}
|
||||
return gameName;
|
||||
@@ -247,12 +247,17 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
|
||||
{
|
||||
if (!File.Exists("Sideloader Launcher.exe"))
|
||||
client.DownloadFile("https://github.com/nerdunit/androidsideloader/raw/master/Sideloader%20Launcher.exe", "Sideloader Launcher.exe");
|
||||
if (!File.Exists($"{Properties.Settings.Default.MainDir}\\adb\\aug2021.txt") || !File.Exists("C:\\RSL\\2.8.2\\ADB\\aug2021.txt")) //if adb is not updated, download and auto extract
|
||||
if (!File.Exists("C:\\RSL\\platform-tools\\aug2021.txt")) //if adb is not updated, download and auto extract
|
||||
{
|
||||
client.DownloadFile("https://github.com/nerdunit/androidsideloader/raw/master/adb.7z", "adb.7z");
|
||||
Utilities.Zip.ExtractFile(Environment.CurrentDirectory + "\\adb.7z", Environment.CurrentDirectory);
|
||||
Utilities.Zip.ExtractFile(Environment.CurrentDirectory + "\\adb.7z", "C:\\RSL\\2.8.2\\");
|
||||
File.Delete("adb.7z");
|
||||
if (Directory.Exists($"C:\\RSL"))
|
||||
Directory.Delete("C:\\RSL", true);
|
||||
if (Directory.Exists($"{Properties.Settings.Default.MainDir}\\adb"))
|
||||
Directory.Delete($"{Properties.Settings.Default.MainDir}\\adb", true);
|
||||
if (!Directory.Exists("C:\\RSL\\platform-tools"))
|
||||
Directory.CreateDirectory("C:\\RSL\\platform-tools");
|
||||
client.DownloadFile("https://github.com/nerdunit/androidsideloader/raw/master/adb2.zip", "adb2.zip");
|
||||
Utilities.Zip.ExtractFile(Environment.CurrentDirectory + "\\adb2.zip", "C:\\RSL\\platform-tools");
|
||||
File.Delete("adb2.zip");
|
||||
}
|
||||
|
||||
if (!Directory.Exists(Environment.CurrentDirectory + "\\rclone"))
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace AndroidSideloader
|
||||
private static string RawGitHubUrl;
|
||||
private static string GitHubUrl;
|
||||
|
||||
static readonly public string LocalVersion = "2.9.3";
|
||||
static readonly public string LocalVersion = "2.9.5";
|
||||
public static string currentVersion = string.Empty;
|
||||
public static string changelog = string.Empty;
|
||||
|
||||
|
||||
@@ -105,7 +105,7 @@ namespace AndroidSideloader.Utilities
|
||||
{
|
||||
public static void ExtractFile(string sourceArchive, string destination)
|
||||
{
|
||||
if (!File.Exists(Environment.CurrentDirectory + "\\7z.exe"))
|
||||
if (!File.Exists(Environment.CurrentDirectory + "\\7z.exe") || !File.Exists(Environment.CurrentDirectory + "\\7z.dll"))
|
||||
{
|
||||
WebClient client = new WebClient();
|
||||
client.DownloadFile("https://github.com/nerdunit/androidsideloader/raw/master/7z.exe", "7z.exe");
|
||||
|
||||
@@ -1,22 +1,3 @@
|
||||
RSL 2.9.3
|
||||
RSL 2.9.5
|
||||
|
||||
+ Added new background color for apps that are a newer
|
||||
version than the version on the list. If you see this
|
||||
darker background please agree to share when prompted
|
||||
upon program launch or alternatively select the game
|
||||
from top drop-down installed apps list and click Share
|
||||
Selected App to help the community!
|
||||
|
||||
+ Added logic for file size column, clicking the column
|
||||
header will now properly sort from biggest to smallest
|
||||
or vice versa.
|
||||
|
||||
= Fixed issue where Rookie would ask for every single
|
||||
app installed on user's device. It should now only ask
|
||||
for apps not on Rookie and not on the Blacklist as
|
||||
intended.
|
||||
|
||||
= Changed zip file naming for new game uploads to use
|
||||
Release Name instead of package name.
|
||||
|
||||
HFP
|
||||
= Hotfix connection bug when starting
|
||||
|
||||
Reference in New Issue
Block a user