Compare commits
44 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c607d1a2fd | ||
|
|
81c1e61d8b | ||
|
|
1dc0e38865 | ||
|
|
19dcacfbbe | ||
|
|
10d8498f1b | ||
|
|
d3620bf033 | ||
|
|
467041825c | ||
|
|
fa380c75f7 | ||
|
|
2882737958 | ||
|
|
aebc719f0b | ||
|
|
d21b72758b | ||
|
|
40cc97aedd | ||
|
|
9a897954b4 | ||
|
|
2e151c7137 | ||
|
|
84d6b14e36 | ||
|
|
97d25c8e9c | ||
|
|
82cf72c677 | ||
|
|
3777b9237b | ||
|
|
2ed7034284 | ||
|
|
98dc7f4738 | ||
|
|
12efbac58a | ||
|
|
00cfc35102 | ||
|
|
31d352a79e | ||
|
|
753e1620ed | ||
|
|
597caad073 | ||
|
|
5b04c0feeb | ||
|
|
0d0ce30e65 | ||
|
|
5117435c8a | ||
|
|
383e721f4b | ||
|
|
1aaa19a969 | ||
|
|
770df54403 | ||
|
|
3e67b331ef | ||
|
|
26442e9516 | ||
|
|
3cd715afd9 | ||
|
|
0ecdaab240 | ||
|
|
801ec1a874 | ||
|
|
ebf0f9372b | ||
|
|
06c534dc50 | ||
|
|
04289885c2 | ||
|
|
8e7b9490de | ||
|
|
cec1ff48fd | ||
|
|
85fad7d3ad | ||
|
|
028c44ba64 | ||
|
|
7923adb4fb |
9
ADB.cs
9
ADB.cs
@@ -14,7 +14,7 @@ namespace AndroidSideloader
|
||||
class ADB
|
||||
{
|
||||
static Process adb = new Process();
|
||||
public static string adbFolderPath = "C:\\RSL\\2.1.1\\ADB";
|
||||
public static string adbFolderPath = "C:\\RSL\\2.8.2\\ADB";
|
||||
public static string adbFilePath = adbFolderPath + "\\adb.exe";
|
||||
public static string DeviceID = "";
|
||||
public static string package = "";
|
||||
@@ -224,7 +224,6 @@ namespace AndroidSideloader
|
||||
{
|
||||
WakeDevice();
|
||||
ProcessOutput output = new ProcessOutput("", "");
|
||||
output += RunAdbCommandToString($"shell pm uninstall -k --user 0 {package}");
|
||||
output += RunAdbCommandToString($"shell pm uninstall {package}");
|
||||
return output;
|
||||
}
|
||||
@@ -276,7 +275,7 @@ namespace AndroidSideloader
|
||||
|
||||
public static bool wirelessadbON;
|
||||
|
||||
public static async void WakeDevice()
|
||||
public static void WakeDevice()
|
||||
{
|
||||
string devicesout = RunAdbCommandToString("shell input keyevent KEYCODE_WAKEUP").Output;
|
||||
if (!devicesout.Contains("found") && !Properties.Settings.Default.nodevicemode)
|
||||
@@ -369,12 +368,12 @@ namespace AndroidSideloader
|
||||
}
|
||||
|
||||
|
||||
public static ProcessOutput Sideload(string path = "", string packagename = "")
|
||||
public static ProcessOutput Sideload(string path, string packagename = "")
|
||||
{
|
||||
|
||||
WakeDevice();
|
||||
ProcessOutput ret = new ProcessOutput();
|
||||
ret += RunAdbCommandToString($"install -g -r \"{path}\"");
|
||||
ret += RunAdbCommandToString($"install -g \"{path}\"");
|
||||
string out2 = ret.Output + ret.Error;
|
||||
if (out2.Contains("failed"))
|
||||
{
|
||||
|
||||
Binary file not shown.
@@ -15,6 +15,7 @@
|
||||
<Deterministic>true</Deterministic>
|
||||
<NuGetPackageImportStamp>
|
||||
</NuGetPackageImportStamp>
|
||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||
<PublishUrl>publish\</PublishUrl>
|
||||
<Install>true</Install>
|
||||
<InstallFrom>Disk</InstallFrom>
|
||||
@@ -27,7 +28,6 @@
|
||||
<MapFileExtensions>true</MapFileExtensions>
|
||||
<ApplicationRevision>0</ApplicationRevision>
|
||||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
</PropertyGroup>
|
||||
@@ -211,6 +211,8 @@
|
||||
<Compile Include="SelectFolder.cs" />
|
||||
<Compile Include="Utilities\StringUtilities.cs" />
|
||||
<Compile Include="Utilities\GeneralUtilities.cs" />
|
||||
<Compile Include="Utilities\UpdateGameData.cs" />
|
||||
<Compile Include="Utilities\UploadGame.cs" />
|
||||
<EmbeddedResource Include="MainForm.resx">
|
||||
<DependentUpon>MainForm.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -265,6 +267,7 @@
|
||||
<None Include="Resources\battery11.png" />
|
||||
<None Include="Resources\battery.png" />
|
||||
<None Include="Resources\battery1.png" />
|
||||
<None Include="Resources\ajax-loader.gif" />
|
||||
<Content Include="Resources\bluekey.png" />
|
||||
<Content Include="Resources\redkey.png" />
|
||||
<None Include="Resources\greenkey.png" />
|
||||
|
||||
12
App.config
12
App.config
@@ -158,6 +158,18 @@
|
||||
<setting name="BMBFchecked" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
<setting name="GamesList" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="UploadedGameList" serializeAs="String">
|
||||
<value>False</value>
|
||||
</setting>
|
||||
<setting name="GlobalUsername" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="lastTimeShared" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
</AndroidSideloader.Properties.Settings>
|
||||
<AndroidADB.Sideloader.Properties.Settings>
|
||||
<setting name="checkForUpdates" serializeAs="String">
|
||||
|
||||
@@ -1,4 +1,282 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
RSL 2.9.0
|
||||
|
||||
= Hotfix to remove errant entry from GamesList
|
||||
that would crash the program.
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
|
||||
RSL 2.9
|
||||
|
||||
+ Updated ADB zip on repo and added a verification
|
||||
text file to ensure all users are on newest ADB,
|
||||
this should fix most obb issues. Upon first launch
|
||||
after this update Rookie will automatically obtain
|
||||
the latest ADB via this zip (7MB).
|
||||
|
||||
+ Added AAPT to repo along with a timer + logic to
|
||||
detect packagename for automatic reinstall when drag
|
||||
and dropped installs fail.
|
||||
|
||||
+ Implemented Size(MB) column to see app size prior
|
||||
to clicking Download and Install.
|
||||
|
||||
= Cleaned up automatic reinstall on apk installation
|
||||
failure for Download and Install, it should work for
|
||||
most users now.
|
||||
|
||||
= Adjusted code for mirror switching, should fix failure
|
||||
to load gameslist whatsoever on dead mirrors.
|
||||
|
||||
= Fixed issue where after installing a game RSL would
|
||||
ask user to donate same clean files again. RSL will now
|
||||
only ask once per program load, as intended.
|
||||
|
||||
- - Removed filesize confirmation dialog when clicking
|
||||
download and install.
|
||||
|
||||
- - Removed columns that were useless to users.
|
||||
|
||||
HFP
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEkn0oACgkQx/Rql1Vo
|
||||
czf7Mg//cU+DnFex+on9JBI5+K2bRfmp6RUhYHQKXD7V/od4vMxWP2jXt7F6ebat
|
||||
32KI9GeQfCubRuFEJKBRQ5BfsZXqZtWbLoYtSfrPsk6fz5JzK5PfzAayRLEmS3nV
|
||||
+3Gu7w7wxlseo+IzN95mvEZOYOaFnv7rieGJsXoEUVh0xZnCF7CzTe6MZ6JSdpCY
|
||||
LUWOiZ2Krxc8W/tD45JLGSxHkMpFlnZO9DLISyN65SdkvjcridbpTWSMiQJPh5KA
|
||||
jTiOM4PzOZo6YCoTsIWy4rvhkIqhdNJdJZK4qb0vN40wvqgbFI7c7yh/rcb/xi7R
|
||||
Ruva6Z2zIJi122lEsohG9TfeNODxIuPGR0rLAJDuSPpri0ukxLMIHPg0ViBQ2Z7D
|
||||
jPmDnEQDKPfaj1gbvAXuk5qd8ogOM3CCpBoaHt3tMFhuCUgxPYx5RxMPjdn8bOvR
|
||||
fjkEfMdvS55pI04seQued6KIlYnkkUGntIcSbBJfVhW8pev2iPxICC3Rn4ejSAnM
|
||||
J3fIjLsUbHxM501HgM8ttWjniEb5ExGFUI/PvF7rNw2WjYT8wJltv8PUWNZoQYy/
|
||||
Upif9IzLVORN9TsrnbxUQBtOZgmvfbCbj+rotYhvj6igo1C3ZX8t001CknljNBCU
|
||||
/9Y18yJRWJ7BpbEbzYpKBofphZzaWI9GN2hM6wV18An8sMEbb4A=
|
||||
=kVMl
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEkntYACgkQx/Rql1Vo
|
||||
czdB/g/9FHUbQt4tTHitnCBjfKmxRY5qcmmvSQM1LRKxoWqOMgl6wmX/oJQFnR1/
|
||||
DL+zc5nf1Qmjll7OyLEZbft2p0+KnGuGNCcB4aB36VcsMEED6j6L63OZeI045KY6
|
||||
cMAmcyR0A/OcfsiqaHjXVOyp8yI4RCGa/M2HwBvZOypxbdTKlftdQEOQ9bVFxV8p
|
||||
1L0NuhHpfewnke1WG3MRjiXlu44athOYh6fACO0/+TTJwmtD6w9A9fc+0A70jqp6
|
||||
pz9WVKzrnVFnq5CbHSQIrmDoQfiqyIxUEmrMKcZipjHfkVa0ZZ5Jjp9QuIozEskp
|
||||
rLxoCawe2NmfHhe4frxF6ngRCVD0Xcn8YmgQAbts+5+PqnvK+DyL0C53BkONUeCp
|
||||
ODAqiTjqWWfsILkpphPDQI4/WWjKURLTKFbse5jboBHNeF810y9gfBC0xHS8MeGO
|
||||
k//02mbJ7gHonRBpuNy0ba80tRHYtzr4OL/gd9YUyVd2AYP/GEptIoWM7ESqR1Hy
|
||||
g7oxD8JGR/WgLIJD1stYC3eh2Fy36J6oJPUvT85EUbPznY7UIL+upT/9wrXPzZqd
|
||||
iI4o8DkPq/9yMEWBwV8cikgllx+KXWgwHbG8lY0uvuxPX26UscGyY1bNytb/WMfG
|
||||
lJaztf9Yo7uBrSIdicEeED1BN+/q/QmsNzR9mpFrqfrqyDB91yA=
|
||||
=z7JR
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.8.7
|
||||
|
||||
= Added code made by Ivan that makes
|
||||
RSL load up much faster.
|
||||
= Added confirmation dialog when using
|
||||
Upload App button in case of accidental
|
||||
misclicks.
|
||||
|
||||
HFP
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEhgj8ACgkQx/Rql1Vo
|
||||
czc+TA/5ARiMcBdvxbKjB6jZKFDGZvEh0IpPyHRJzLpuZhHI+qR91P3UI9fXCrQ6
|
||||
Vzi6Nc0I3YMhPIpNnp9uxWkNfeIUDTdBUi+wwIpMopupVxLCEJkR7ZGkjJHFWPYn
|
||||
Hm19BLmmv9dctJwQlPLyaDgnb0+GKDRzZF8xHKBopbmModbhHwnt0UHTmodD4syc
|
||||
DinfaVpM+RwGZOptUyzwqLR51aQb03JrbHS3gkB40EbsIr6brZd50lahSvVMW8W4
|
||||
Btc3gf0rig+BrjXgUkNFlZ1PZ+jM1+12dWflYNvMYCoQ7bRc7Kds7IqCiPIweRF1
|
||||
2YR5jBh52C2ChhY3sfbc8G6VkbXW7N6ktz/11mrIc7Mc7X4ibpsDzQCUyDiuXNwi
|
||||
wm3ikq5liQYlM/I/awutD8yDcJPGEoUui8wYehwi23Pzujdh74bBYd9F6cQLg7Tb
|
||||
AsRLvEDY/n7gsDzqdt/oqUkGtt0x4c0K5ZPEIe9pcQvfNln7j/Mf3BNC4HZRkeei
|
||||
+FIyuhVf/w4dcz3xm1g5060N2eQLgXCk7690aak3l9ucghivUFlrKGe8vRk7qtE6
|
||||
FebUemHtTgurKz1bm8XCZjfvq0IR7MY+iGgIfKtXbM8SqjxIDhE7P1QuGXeZD9y3
|
||||
nkjY4+FHkT7BXSlOUpQ/6tR0wGYxtrxuNfwlXKGEqJlzPBbmCAY=
|
||||
=Zdt7
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.8.6
|
||||
|
||||
+ Added Set username option to Quest
|
||||
Options. This will work for all apps.
|
||||
|
||||
HFP
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEgoXkACgkQx/Rql1Vo
|
||||
czexgg/+P9mlydoik903J8wSbVvVvRhxypl+TI7ijkwU++qm4iGCc1ntqz/E/yAZ
|
||||
SpVjfuGpr3GV/B3ZkCKKvwvrwUr11CJFteoQ++HVmDlRwUu0DpNFIwiIi46E2ca8
|
||||
28Y3+A55WeNMFcLEBTB8nLUd7++YVhPs4ZKNOkCu+OYGMZN/2B6kPS9674YvRCZv
|
||||
7yqxmYBs5tVXHqoFJEGC6fMIfMN7rF1zkZ5u5qOpOeGGkFOeCyrtv/7fY7XmL9Qj
|
||||
i3mPOn8OV7N8wMoXt1j7cagdmYh2rwK90raCovItqWmCoy2HoBtxM6624+q5kt0i
|
||||
2ne5s/p3yiwlW4tRFHsCzseN3N6gEv3kQ2gSN5JDfyUlTOZwMrYyWvNHrYsuJH/U
|
||||
ibxPQFInULg2RmuARvRZRngtvxPIQsANuFyzCU2jGUOPvrtHfDtvnAL1WtHZtmga
|
||||
x1iiw86GKfvmkqPq9Sz6NXczCOyE6d7knfGNNqK5Ec7D2I/O2aw/9Ssz1TiAhj9S
|
||||
vIiw0ABOTI0VrSic63y0qkShq81BcaYd7IFX2r++JnC+LEoYuA9EriaqKqwCLgLU
|
||||
ghwBYOSnkh7/mGu7eBF8SzYk3QlhC5+5IcsQtwNT97Z2DqVxzlT0CwFot9puObnO
|
||||
AkeRZ5JtDd9w3RmjcMIVVpqyUvC8guDlBgMsrwFNiRcxyY08+es=
|
||||
=T/ZC
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.8.5
|
||||
|
||||
+ Added OPT-IN installed packages check,
|
||||
this will be used to add common free apps
|
||||
to a blacklist so a future version of RSL
|
||||
can ask users to donate new apps.
|
||||
|
||||
= Fixed logic for apk signature mismatch
|
||||
automatic reinstall.
|
||||
|
||||
= Increased timer for apk installation
|
||||
failure to 3 minutes.
|
||||
|
||||
= Fixed blacklist implementation for
|
||||
updates to apps already on RSL.
|
||||
|
||||
- - Removed 2nd confirmation dialog for
|
||||
app uninstalls.
|
||||
|
||||
HFP
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEfX4kACgkQx/Rql1Vo
|
||||
czch2BAAgPAPx8ziiX8e+IH9wBTBbj+Z9V8/GCaehCYd2SdOi9n4rHwzKL2S96mb
|
||||
VAyEuYyEnPc+sGIIVoUczAeoBOFpt6rwVwAysHfX85+MFcaJ8x/k5iAHwUYUDbaS
|
||||
retbuPO4YIsPHI38DWscOO0G/uD+caa5sf6/hYr6wLhIIozAmE3L9XtUuYO6kKSo
|
||||
m2hBAf728MWODRHH0G6+ktJG1sL1l5x66A+wvRkKHoYZFGLrAM126yGWIQlmWdtN
|
||||
F2AzBPXvIX09wtpiXQwLAc0GNF/wrazd8A5d9l0c+Rkl2lmist5k9xBD+MAbehdb
|
||||
QI1QgKXDvEZIp/+B4BgaB193HxZZFphVkRtera8mlohmiHVzunFcpHonOrc90jjk
|
||||
7fAMiieR/EgaRGXux9a24s/q32L/dHxqUtZfHhYbgRtWe4Kcm9AbVkLDVSAPiQik
|
||||
5k8fFRkokRQVgd5i/G0fzMPLHfKIn9afQ5oli7WxL761JQcx7HDb6/HS0BKiyZWN
|
||||
CsAxNjHt+4B/k5lvJNSCJL8mjQMjTViiPNYE9OmM6SzttvYtn8NGE6+fKb/e5x7+
|
||||
DjQuOVZ3b6TtKnvmx/Q5TbF82P23p9I6Aa32mMO8edD2CYKIF8bmDNlSGjWs3EC9
|
||||
OxsIksCmNIb4pxY25ejlN/X92/75YNsxrI+dYhXJPMOm39WQtVY=
|
||||
=EPMk
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
|
||||
RSL 2.8.4
|
||||
+ Hotfix to update the exclusion list of games we need updates for.
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.8.2
|
||||
|
||||
+ Added automatic upload to Google shared drive
|
||||
for clean game files donation.
|
||||
+ Added uploading GIF for duration of upload.
|
||||
+ Added warning messages when user attempts
|
||||
to close Rookie while games are download, installing,
|
||||
or uploading.
|
||||
= Threaded clean file zipping and uploading
|
||||
so user can continue to use Rookie while game
|
||||
is uploading.
|
||||
|
||||
|
||||
P.S. We are looking for volunteers for the next
|
||||
beta which will automatically detect new games
|
||||
installed on user's headset and suggest them for
|
||||
donation. Message https://t.me/Harryeffinpotter or
|
||||
https://t.me/pmowpmow on Telegram to join the beta
|
||||
test!
|
||||
|
||||
HFP
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEd+IUACgkQx/Rql1Vo
|
||||
czcyUw/+ImynsE4CXmv+LjuTH1by6L2AHZFZCQ0cgwq88OOwdir/WzPfNeqqv0e6
|
||||
/QCRbRdvC6pASPgHryCkvFPFXUoLgQ+lXZY1GCBUzX0lIMqrenihQ5QUQb70LOxR
|
||||
kVkivnxLJzBeQAXn+gkvPXMCIn3l0yVInsjtusVqVHtmsegcAQTwcrG7RXSsl0dr
|
||||
2rkPOuvlcxMTWA4SlE16IhuLcq8L9GavpeWKoQiaoydhBGdzfAe1O4yy6UQs7Nas
|
||||
9Xl3vy1mXnZIprTOtjH+zYXxcdcxb1ZAdvHdq19nqTf5iuCqO+A4TxSq4vRv6Dvt
|
||||
XkJ0igXJsscpIQjJ812mZACJiJlP31yPdhZvKZXtUAQoR63iRPiEpY2gIKrd249Y
|
||||
HIq0g+XaO0K8kjOAmrBxLpESEBEovhhcfvrepSh7NocsxRAAnxOJUdcbmekwRjpj
|
||||
MCtMYThTYRXoR2aWxIbtaviUIecAGxuF8m+wWbxnWqJSEh4BanmQKjoh32G8geEE
|
||||
PS4XMBcWQ0/MhKSibaWO0SQCjrHNtsmbVvu28rh/eD9ar4Z9tPxza43iqSepSEjK
|
||||
Vlka7WxpkeqVCYnTpoLPv7I+XBBRojKlUp8aUz4MrOuuzNg08GyLFgKejU1aiw4I
|
||||
7s3PjFj6e4SsRgAKHhKStjYzVTkhlbyWIguhyPdzpiNoMFEwMz8=
|
||||
=EIFi
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.8.1
|
||||
|
||||
= Fixed crash at startup related to Upload Date column.
|
||||
|
||||
HFP
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEZPjAACgkQx/Rql1Vo
|
||||
czdfUw/+PiQ03p3FFwuVIndiDHKvwcjcewDWASYiP2KJkDCsbaEj0U5+ntpu7mxo
|
||||
ytIFuNZd47CwiYGFXi6IzEO1n9yj4LL3ONnVEogZgd3bP3Bb2b28KDdHtDX3IO5d
|
||||
wWle/WMksKDywqRyjJnaP9dh+7YS0C/49H32cFokF8S69stPwPYh9LSaf4ctK0/f
|
||||
y8pHN7tgOkmCR8NU6lOY9OLepBZlv+PcOAco0nIz1zHtwdRGz2vjwQqAa8NShfEy
|
||||
E/rjBhM37YBULf7cOayt0FY/rDYvw6Bj8B9ht0Bn6dmWgJrhfAj01utREL8HcmPd
|
||||
rNDXB7UxuR56OVy1f1gh1Fzb5f62xDydfELd/0dFYE0oDcdkHjaEkT5CnAukBmrO
|
||||
y0ntjawsy40dVAwPwPSAPQ+qP9g7mDZdbjOfgP4JNFWwnxgYLlTASoUMis/hd5mg
|
||||
FLaFAiMM3o72Gip+gjMl3AiuwyefKoCGfAPgNvRx0t8R3bdLfVJ0KIPpgvJ7ZuD8
|
||||
n4LEHLPoldDmoshdxl/BiQyLhaEM3W3qkwANVic6/8eCqy/N23CM74L4xgUaQDoq
|
||||
dvkS3PKuhLvcYh4HkZNhALj7Mavvs0x8/pIGx8bK8JCNOhKX7rGylF6erDFfZ8Ym
|
||||
T2vN0PjVYS/pF//qKHPyV5yVc5piudCB895LBNIDcJK1b67nUUE=
|
||||
=+e9J
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.8
|
||||
|
||||
+ Added modified date to games list columns.
|
||||
= Drag and drop install will now show current
|
||||
APK name.
|
||||
|
||||
HFP
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEYjb8ACgkQx/Rql1Vo
|
||||
czcinQ//fNTuVCVHvq+fovTzg+rcqyy8CJVvZq8iH7OxUGLpbIoDaXEkMZCjNSl1
|
||||
p+4XPoCEKda8gqIjWJ3RV9Uog7C/0guUWhFMyUTePtDcDVFGhF3ALMk02MJqFDZh
|
||||
d2E1np0xQ2CdwGVVQs4otyLxKcgB5ATvFQkBE24+QEIyhAMdxQE0wN0BmzwcD5/K
|
||||
ETc7nULnvFx/s83dNO6FuGeqDjlSJ9BTad0BdsyafJK6wXqA6hKx4eEZjPZmBS6W
|
||||
wTpRQEJy4fOFB19c/W1TpQtvhu2AF+E0ofvP9xzQbVctPpc9B6omrhr4j6AJ23PH
|
||||
2IKcpMhOu1N5yAAIbqCR9Gwd5WAKYN/xVcqzJF49V3DJS7VaEIAOCRiy6xSAg4mX
|
||||
1YSHhOxcoq2WfbW/h6tF6fM51YDIqQg5Iw/pNF+hFO8n9vCEo22dooPhO8CInutY
|
||||
PVchoY+9rdH+13SLAiXaSdXl2I8TlDJWL2Y6iNQvwlcfXp1dYJ+4sdcSkEhNszKx
|
||||
0N51kHXQ2kpMK+D8gBMESYOMgwh550f9iME/roKl+yb7JxdnQv51/BiCCTpTzgjq
|
||||
OQqvGJ9z3gS9s6de9H7LFOHB/Vd0kBflfWIm+qlOHefXXVfBt1SCcu6j6aX3EFYB
|
||||
AC+FxvR5X4uYk0iYGRJzZK9ChqI0LVVTfAjDq3/sHm2/70cdqXk=
|
||||
=0i1h
|
||||
-----END PGP SIGNATURE-----
|
||||
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
|
||||
RSL 2.7.2
|
||||
|
||||
33
MainForm.Designer.cs
generated
33
MainForm.Designer.cs
generated
@@ -41,6 +41,8 @@
|
||||
this.copyBulkObbButton = new System.Windows.Forms.Button();
|
||||
this.downloadInstallGameButton = new System.Windows.Forms.Button();
|
||||
this.panel1 = new System.Windows.Forms.Panel();
|
||||
this.ULLabel = new System.Windows.Forms.Label();
|
||||
this.ULGif = new System.Windows.Forms.PictureBox();
|
||||
this.BatteryLbl = new System.Windows.Forms.Label();
|
||||
this.pictureBox5 = new System.Windows.Forms.PictureBox();
|
||||
this.downloadingLabel = new System.Windows.Forms.Label();
|
||||
@@ -92,6 +94,7 @@
|
||||
this.pictureBox2 = new System.Windows.Forms.PictureBox();
|
||||
this.gamesPictureBox = new System.Windows.Forms.PictureBox();
|
||||
this.panel1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.ULGif)).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox5)).BeginInit();
|
||||
this.otherContainer.SuspendLayout();
|
||||
this.backupContainer.SuspendLayout();
|
||||
@@ -239,7 +242,7 @@
|
||||
this.getApkButton.Padding = new System.Windows.Forms.Padding(23, 0, 0, 0);
|
||||
this.getApkButton.Size = new System.Drawing.Size(218, 28);
|
||||
this.getApkButton.TabIndex = 2;
|
||||
this.getApkButton.Text = "Extract App to Desktop";
|
||||
this.getApkButton.Text = "Share Selected App";
|
||||
this.getApkButton.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.getApkButton.UseVisualStyleBackColor = false;
|
||||
this.getApkButton.Click += new System.EventHandler(this.getApkButton_Click);
|
||||
@@ -343,6 +346,8 @@
|
||||
//
|
||||
this.panel1.AutoScroll = true;
|
||||
this.panel1.BackColor = global::AndroidSideloader.Properties.Settings.Default.ButtonColor;
|
||||
this.panel1.Controls.Add(this.ULLabel);
|
||||
this.panel1.Controls.Add(this.ULGif);
|
||||
this.panel1.Controls.Add(this.BatteryLbl);
|
||||
this.panel1.Controls.Add(this.pictureBox5);
|
||||
this.panel1.Controls.Add(this.downloadingLabel);
|
||||
@@ -366,6 +371,29 @@
|
||||
this.panel1.Size = new System.Drawing.Size(218, 721);
|
||||
this.panel1.TabIndex = 73;
|
||||
//
|
||||
// ULLabel
|
||||
//
|
||||
this.ULLabel.AutoSize = true;
|
||||
this.ULLabel.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.ULLabel.ForeColor = System.Drawing.Color.Snow;
|
||||
this.ULLabel.Location = new System.Drawing.Point(154, 683);
|
||||
this.ULLabel.Name = "ULLabel";
|
||||
this.ULLabel.Size = new System.Drawing.Size(64, 13);
|
||||
this.ULLabel.TabIndex = 87;
|
||||
this.ULLabel.Text = "Uploading";
|
||||
this.ULLabel.Visible = false;
|
||||
//
|
||||
// ULGif
|
||||
//
|
||||
this.ULGif.Enabled = false;
|
||||
this.ULGif.Image = global::AndroidSideloader.Properties.Resources.ajax_loader;
|
||||
this.ULGif.Location = new System.Drawing.Point(178, 699);
|
||||
this.ULGif.Name = "ULGif";
|
||||
this.ULGif.Size = new System.Drawing.Size(34, 17);
|
||||
this.ULGif.TabIndex = 86;
|
||||
this.ULGif.TabStop = false;
|
||||
this.ULGif.Visible = false;
|
||||
//
|
||||
// BatteryLbl
|
||||
//
|
||||
this.BatteryLbl.AutoSize = true;
|
||||
@@ -1260,6 +1288,7 @@
|
||||
this.DragLeave += new System.EventHandler(this.Form1_DragLeave);
|
||||
this.panel1.ResumeLayout(false);
|
||||
this.panel1.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.ULGif)).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox5)).EndInit();
|
||||
this.otherContainer.ResumeLayout(false);
|
||||
this.backupContainer.ResumeLayout(false);
|
||||
@@ -1338,6 +1367,8 @@
|
||||
private System.Windows.Forms.Label BatteryLbl;
|
||||
private System.Windows.Forms.PictureBox pictureBox5;
|
||||
public System.Windows.Forms.ComboBox remotesList;
|
||||
private System.Windows.Forms.PictureBox ULGif;
|
||||
private System.Windows.Forms.Label ULLabel;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
5159
MainForm.cs
5159
MainForm.cs
File diff suppressed because it is too large
Load Diff
10
Properties/Resources.Designer.cs
generated
10
Properties/Resources.Designer.cs
generated
@@ -60,6 +60,16 @@ namespace AndroidSideloader.Properties {
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
public static System.Drawing.Bitmap ajax_loader {
|
||||
get {
|
||||
object obj = ResourceManager.GetObject("ajax-loader", resourceCulture);
|
||||
return ((System.Drawing.Bitmap)(obj));
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
/// </summary>
|
||||
|
||||
@@ -130,6 +130,9 @@
|
||||
<data name="battery" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\battery.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="battery11" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\battery1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="SearchGlass" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\SearchGlass.PNG;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
@@ -139,7 +142,7 @@
|
||||
<data name="redkey" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\redkey.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="battery11" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\battery1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
<data name="ajax-loader" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\ajax-loader.gif;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
47
Properties/Settings.Designer.cs
generated
47
Properties/Settings.Designer.cs
generated
@@ -610,5 +610,52 @@ namespace AndroidSideloader.Properties {
|
||||
this["BMBFchecked"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string GamesList {
|
||||
get {
|
||||
return ((string)(this["GamesList"]));
|
||||
}
|
||||
set {
|
||||
this["GamesList"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("False")]
|
||||
public bool UploadedGameList {
|
||||
get {
|
||||
return ((bool)(this["UploadedGameList"]));
|
||||
}
|
||||
set {
|
||||
this["UploadedGameList"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string GlobalUsername {
|
||||
get {
|
||||
return ((string)(this["GlobalUsername"]));
|
||||
}
|
||||
set {
|
||||
this["GlobalUsername"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
public global::System.DateTime lastTimeShared {
|
||||
get {
|
||||
return ((global::System.DateTime)(this["lastTimeShared"]));
|
||||
}
|
||||
set {
|
||||
this["lastTimeShared"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -149,5 +149,17 @@
|
||||
<Setting Name="BMBFchecked" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
<Setting Name="GamesList" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="UploadedGameList" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">False</Value>
|
||||
</Setting>
|
||||
<Setting Name="GlobalUsername" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="lastTimeShared" Type="System.DateTime" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
||||
102
QuestForm.Designer.cs
generated
102
QuestForm.Designer.cs
generated
@@ -59,16 +59,17 @@ namespace AndroidSideloader
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.ResolutionLabel = new System.Windows.Forms.Label();
|
||||
this.GlobalUsername = new System.Windows.Forms.TextBox();
|
||||
this.FOVy = new System.Windows.Forms.TextBox();
|
||||
this.FOVx = new System.Windows.Forms.TextBox();
|
||||
this.UsrBox = new System.Windows.Forms.TextBox();
|
||||
this.ResBox = new System.Windows.Forms.TextBox();
|
||||
this.TextureResTextBox = new System.Windows.Forms.TextBox();
|
||||
this.QUEnable = new System.Windows.Forms.Button();
|
||||
this.WifiWake = new System.Windows.Forms.Button();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.QURfrRt = new System.Windows.Forms.ComboBox();
|
||||
this.RefreshRateComboBox = new System.Windows.Forms.ComboBox();
|
||||
this.WifiWake = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
@@ -213,14 +214,15 @@ namespace AndroidSideloader
|
||||
// button3
|
||||
//
|
||||
this.button3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.button3.Enabled = false;
|
||||
this.button3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.button3.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.5F);
|
||||
this.button3.ForeColor = System.Drawing.SystemColors.ButtonHighlight;
|
||||
this.button3.Location = new System.Drawing.Point(101, 702);
|
||||
this.button3.Location = new System.Drawing.Point(278, 700);
|
||||
this.button3.Name = "button3";
|
||||
this.button3.Size = new System.Drawing.Size(169, 25);
|
||||
this.button3.Size = new System.Drawing.Size(81, 25);
|
||||
this.button3.TabIndex = 17;
|
||||
this.button3.Text = "CUSTOM USER.JSON";
|
||||
this.button3.Text = "APPLY";
|
||||
this.button3.UseVisualStyleBackColor = false;
|
||||
this.button3.Click += new System.EventHandler(this.button3_Click);
|
||||
//
|
||||
@@ -230,11 +232,11 @@ namespace AndroidSideloader
|
||||
this.label12.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label12.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label12.ForeColor = System.Drawing.Color.LightCyan;
|
||||
this.label12.Location = new System.Drawing.Point(93, 656);
|
||||
this.label12.Location = new System.Drawing.Point(121, 656);
|
||||
this.label12.Name = "label12";
|
||||
this.label12.Size = new System.Drawing.Size(185, 20);
|
||||
this.label12.Size = new System.Drawing.Size(128, 20);
|
||||
this.label12.TabIndex = 6;
|
||||
this.label12.Text = "Set custom user.json*";
|
||||
this.label12.Text = "Set username*";
|
||||
this.label12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// label13
|
||||
@@ -243,11 +245,11 @@ namespace AndroidSideloader
|
||||
this.label13.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.label13.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.label13.ForeColor = System.Drawing.Color.LightSteelBlue;
|
||||
this.label13.Location = new System.Drawing.Point(53, 678);
|
||||
this.label13.Location = new System.Drawing.Point(83, 678);
|
||||
this.label13.Name = "label13";
|
||||
this.label13.Size = new System.Drawing.Size(265, 16);
|
||||
this.label13.Size = new System.Drawing.Size(204, 16);
|
||||
this.label13.TabIndex = 6;
|
||||
this.label13.Text = "*For games that don\'t work with QU settings.";
|
||||
this.label13.Text = "*For games not released by -QU.";
|
||||
this.label13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
//
|
||||
// DeleteShots
|
||||
@@ -333,7 +335,7 @@ namespace AndroidSideloader
|
||||
"4"});
|
||||
this.CPUComboBox.Location = new System.Drawing.Point(13, 123);
|
||||
this.CPUComboBox.Name = "CPUComboBox";
|
||||
this.CPUComboBox.Size = new System.Drawing.Size(346, 28);
|
||||
this.CPUComboBox.Size = new System.Drawing.Size(346, 26);
|
||||
this.CPUComboBox.TabIndex = 2;
|
||||
this.CPUComboBox.Text = "Select CPU level (0 for default)";
|
||||
//
|
||||
@@ -355,7 +357,7 @@ namespace AndroidSideloader
|
||||
"4"});
|
||||
this.GPUComboBox.Location = new System.Drawing.Point(13, 94);
|
||||
this.GPUComboBox.Name = "GPUComboBox";
|
||||
this.GPUComboBox.Size = new System.Drawing.Size(346, 28);
|
||||
this.GPUComboBox.Size = new System.Drawing.Size(346, 26);
|
||||
this.GPUComboBox.TabIndex = 1;
|
||||
this.GPUComboBox.Text = "Select GPU level (0 for default)";
|
||||
//
|
||||
@@ -369,7 +371,7 @@ namespace AndroidSideloader
|
||||
this.label7.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label7.Location = new System.Drawing.Point(13, 532);
|
||||
this.label7.Name = "label7";
|
||||
this.label7.Size = new System.Drawing.Size(59, 20);
|
||||
this.label7.Size = new System.Drawing.Size(56, 18);
|
||||
this.label7.TabIndex = 3;
|
||||
this.label7.Text = "Fov - X";
|
||||
this.label7.Visible = false;
|
||||
@@ -384,7 +386,7 @@ namespace AndroidSideloader
|
||||
this.label8.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label8.Location = new System.Drawing.Point(191, 532);
|
||||
this.label8.Name = "label8";
|
||||
this.label8.Size = new System.Drawing.Size(59, 20);
|
||||
this.label8.Size = new System.Drawing.Size(55, 18);
|
||||
this.label8.TabIndex = 3;
|
||||
this.label8.Text = "Fov - Y";
|
||||
this.label8.Visible = false;
|
||||
@@ -399,7 +401,7 @@ namespace AndroidSideloader
|
||||
this.label9.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label9.Location = new System.Drawing.Point(12, 583);
|
||||
this.label9.Name = "label9";
|
||||
this.label9.Size = new System.Drawing.Size(105, 20);
|
||||
this.label9.Size = new System.Drawing.Size(95, 18);
|
||||
this.label9.TabIndex = 3;
|
||||
this.label9.Text = "Refresh Rate";
|
||||
this.label9.Visible = false;
|
||||
@@ -414,7 +416,7 @@ namespace AndroidSideloader
|
||||
this.label6.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label6.Location = new System.Drawing.Point(93, 484);
|
||||
this.label6.Name = "label6";
|
||||
this.label6.Size = new System.Drawing.Size(185, 20);
|
||||
this.label6.Size = new System.Drawing.Size(173, 18);
|
||||
this.label6.TabIndex = 3;
|
||||
this.label6.Text = "Enter Custom Username";
|
||||
this.label6.Visible = false;
|
||||
@@ -429,7 +431,7 @@ namespace AndroidSideloader
|
||||
this.label5.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.label5.Location = new System.Drawing.Point(16, 434);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(362, 20);
|
||||
this.label5.Size = new System.Drawing.Size(337, 18);
|
||||
this.label5.TabIndex = 3;
|
||||
this.label5.Text = "Custom Resolution Width (Height auto calculated)";
|
||||
this.label5.Visible = false;
|
||||
@@ -444,10 +446,24 @@ namespace AndroidSideloader
|
||||
this.ResolutionLabel.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.ResolutionLabel.Location = new System.Drawing.Point(9, 180);
|
||||
this.ResolutionLabel.Name = "ResolutionLabel";
|
||||
this.ResolutionLabel.Size = new System.Drawing.Size(166, 20);
|
||||
this.ResolutionLabel.Size = new System.Drawing.Size(153, 18);
|
||||
this.ResolutionLabel.TabIndex = 3;
|
||||
this.ResolutionLabel.Text = "Resolution (0=default)";
|
||||
//
|
||||
// GlobalUsername
|
||||
//
|
||||
this.GlobalUsername.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
|
||||
this.GlobalUsername.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "TextBoxColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.GlobalUsername.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.GlobalUsername.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.GlobalUsername.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.GlobalUsername.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.GlobalUsername.Location = new System.Drawing.Point(12, 701);
|
||||
this.GlobalUsername.Name = "GlobalUsername";
|
||||
this.GlobalUsername.Size = new System.Drawing.Size(262, 24);
|
||||
this.GlobalUsername.TabIndex = 12;
|
||||
this.GlobalUsername.TextChanged += new System.EventHandler(this.GlobalUsername_TextChanged);
|
||||
//
|
||||
// FOVy
|
||||
//
|
||||
this.FOVy.BackColor = global::AndroidSideloader.Properties.Settings.Default.TextBoxColor;
|
||||
@@ -458,7 +474,7 @@ namespace AndroidSideloader
|
||||
this.FOVy.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.FOVy.Location = new System.Drawing.Point(189, 507);
|
||||
this.FOVy.Name = "FOVy";
|
||||
this.FOVy.Size = new System.Drawing.Size(169, 26);
|
||||
this.FOVy.Size = new System.Drawing.Size(169, 24);
|
||||
this.FOVy.TabIndex = 12;
|
||||
this.FOVy.Text = "0";
|
||||
this.FOVy.Visible = false;
|
||||
@@ -474,7 +490,7 @@ namespace AndroidSideloader
|
||||
this.FOVx.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.FOVx.Location = new System.Drawing.Point(13, 507);
|
||||
this.FOVx.Name = "FOVx";
|
||||
this.FOVx.Size = new System.Drawing.Size(169, 26);
|
||||
this.FOVx.Size = new System.Drawing.Size(169, 24);
|
||||
this.FOVx.TabIndex = 11;
|
||||
this.FOVx.Text = "0";
|
||||
this.FOVx.Visible = false;
|
||||
@@ -490,7 +506,7 @@ namespace AndroidSideloader
|
||||
this.UsrBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.UsrBox.Location = new System.Drawing.Point(13, 459);
|
||||
this.UsrBox.Name = "UsrBox";
|
||||
this.UsrBox.Size = new System.Drawing.Size(345, 26);
|
||||
this.UsrBox.Size = new System.Drawing.Size(345, 24);
|
||||
this.UsrBox.TabIndex = 10;
|
||||
this.UsrBox.Text = "0";
|
||||
this.UsrBox.Visible = false;
|
||||
@@ -506,7 +522,7 @@ namespace AndroidSideloader
|
||||
this.ResBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.ResBox.Location = new System.Drawing.Point(13, 409);
|
||||
this.ResBox.Name = "ResBox";
|
||||
this.ResBox.Size = new System.Drawing.Size(345, 26);
|
||||
this.ResBox.Size = new System.Drawing.Size(345, 24);
|
||||
this.ResBox.TabIndex = 9;
|
||||
this.ResBox.Text = "0";
|
||||
this.ResBox.Visible = false;
|
||||
@@ -522,7 +538,7 @@ namespace AndroidSideloader
|
||||
this.TextureResTextBox.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.TextureResTextBox.Location = new System.Drawing.Point(13, 152);
|
||||
this.TextureResTextBox.Name = "TextureResTextBox";
|
||||
this.TextureResTextBox.Size = new System.Drawing.Size(167, 26);
|
||||
this.TextureResTextBox.Size = new System.Drawing.Size(167, 24);
|
||||
this.TextureResTextBox.TabIndex = 3;
|
||||
this.TextureResTextBox.Text = "0";
|
||||
//
|
||||
@@ -544,6 +560,23 @@ namespace AndroidSideloader
|
||||
this.QUEnable.Visible = false;
|
||||
this.QUEnable.Click += new System.EventHandler(this.QUEnable_Click);
|
||||
//
|
||||
// WifiWake
|
||||
//
|
||||
this.WifiWake.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
|
||||
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.WifiWake.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.WifiWake.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.WifiWake.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.WifiWake.Location = new System.Drawing.Point(189, 180);
|
||||
this.WifiWake.Name = "WifiWake";
|
||||
this.WifiWake.Size = new System.Drawing.Size(170, 25);
|
||||
this.WifiWake.TabIndex = 4;
|
||||
this.WifiWake.Text = "ENABLE WIFI WAKE";
|
||||
this.WifiWake.UseVisualStyleBackColor = false;
|
||||
this.WifiWake.Click += new System.EventHandler(this.WifiWake_Click);
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
|
||||
@@ -578,7 +611,7 @@ namespace AndroidSideloader
|
||||
"120"});
|
||||
this.QURfrRt.Location = new System.Drawing.Point(13, 555);
|
||||
this.QURfrRt.Name = "QURfrRt";
|
||||
this.QURfrRt.Size = new System.Drawing.Size(170, 28);
|
||||
this.QURfrRt.Size = new System.Drawing.Size(170, 26);
|
||||
this.QURfrRt.TabIndex = 13;
|
||||
this.QURfrRt.Text = "0";
|
||||
this.QURfrRt.Visible = false;
|
||||
@@ -600,27 +633,10 @@ namespace AndroidSideloader
|
||||
"120"});
|
||||
this.RefreshRateComboBox.Location = new System.Drawing.Point(13, 65);
|
||||
this.RefreshRateComboBox.Name = "RefreshRateComboBox";
|
||||
this.RefreshRateComboBox.Size = new System.Drawing.Size(346, 28);
|
||||
this.RefreshRateComboBox.Size = new System.Drawing.Size(346, 26);
|
||||
this.RefreshRateComboBox.TabIndex = 0;
|
||||
this.RefreshRateComboBox.Text = "Select refresh rate";
|
||||
//
|
||||
// WifiWake
|
||||
//
|
||||
this.WifiWake.BackColor = global::AndroidSideloader.Properties.Settings.Default.SubButtonColor;
|
||||
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("ForeColor", global::AndroidSideloader.Properties.Settings.Default, "FontColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("Font", global::AndroidSideloader.Properties.Settings.Default, "FontStyle", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.WifiWake.DataBindings.Add(new System.Windows.Forms.Binding("BackColor", global::AndroidSideloader.Properties.Settings.Default, "SubButtonColor", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged));
|
||||
this.WifiWake.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.WifiWake.Font = global::AndroidSideloader.Properties.Settings.Default.FontStyle;
|
||||
this.WifiWake.ForeColor = global::AndroidSideloader.Properties.Settings.Default.FontColor;
|
||||
this.WifiWake.Location = new System.Drawing.Point(189, 180);
|
||||
this.WifiWake.Name = "WifiWake";
|
||||
this.WifiWake.Size = new System.Drawing.Size(170, 25);
|
||||
this.WifiWake.TabIndex = 4;
|
||||
this.WifiWake.Text = "ENABLE WIFI WAKE";
|
||||
this.WifiWake.UseVisualStyleBackColor = false;
|
||||
this.WifiWake.Click += new System.EventHandler(this.WifiWake_Click);
|
||||
//
|
||||
// QuestForm
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
@@ -654,6 +670,7 @@ namespace AndroidSideloader
|
||||
this.Controls.Add(this.label6);
|
||||
this.Controls.Add(this.label5);
|
||||
this.Controls.Add(this.ResolutionLabel);
|
||||
this.Controls.Add(this.GlobalUsername);
|
||||
this.Controls.Add(this.FOVy);
|
||||
this.Controls.Add(this.FOVx);
|
||||
this.Controls.Add(this.UsrBox);
|
||||
@@ -719,6 +736,7 @@ namespace AndroidSideloader
|
||||
private Label label15;
|
||||
private Label label16;
|
||||
private Button WifiWake;
|
||||
private TextBox GlobalUsername;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
28
QuestForm.cs
28
QuestForm.cs
@@ -210,6 +210,8 @@ namespace AndroidSideloader
|
||||
{
|
||||
if (Properties.Settings.Default.delsh)
|
||||
DeleteShots.Checked = true;
|
||||
else
|
||||
DeleteShots.Checked = false;
|
||||
if (Properties.Settings.Default.QUsett)
|
||||
{
|
||||
ResBox.Text = Properties.Settings.Default.QUres;
|
||||
@@ -219,10 +221,9 @@ namespace AndroidSideloader
|
||||
QURfrRt.Text = Properties.Settings.Default.QUhz;
|
||||
QUon.Checked = true;
|
||||
if (settingsexist)
|
||||
QUSon = true;
|
||||
|
||||
|
||||
QUSon = true;
|
||||
}
|
||||
GlobalUsername.Text = Properties.Settings.Default.GlobalUsername;
|
||||
}
|
||||
|
||||
private void ResBox_TextChanged(object sender, EventArgs e)
|
||||
@@ -308,8 +309,15 @@ namespace AndroidSideloader
|
||||
}
|
||||
private void button3_Click(object sender, EventArgs e)
|
||||
{
|
||||
UsernameForm Form = new UsernameForm();
|
||||
Form.Show();
|
||||
if (GlobalUsername.Text.Contains(" "))
|
||||
{
|
||||
MessageBox.Show("Usernames with a space are not permitted.", "Detected a space in username!");
|
||||
}
|
||||
else
|
||||
{
|
||||
ADB.RunAdbCommandToString($"shell settings put global username {GlobalUsername.Text}");
|
||||
MessageBox.Show($"Username set as {GlobalUsername.Text}", "Success");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -336,5 +344,15 @@ namespace AndroidSideloader
|
||||
ADB.RunAdbCommandToString("shell settings put global wifi_wakeup_enabled 1");
|
||||
MessageBox.Show("Wake on Wifi enabled!\n\nNOTE: This requires having wireless ADB enabled to work. (Obviously)");
|
||||
}
|
||||
|
||||
private void GlobalUsername_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (GlobalUsername.TextLength > 0)
|
||||
button3.Enabled = true;
|
||||
else
|
||||
button3.Enabled = false;
|
||||
Properties.Settings.Default.GlobalUsername = GlobalUsername.Text;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
13
RCLONE.cs
13
RCLONE.cs
@@ -38,9 +38,6 @@ namespace AndroidSideloader
|
||||
{
|
||||
if (!MainForm.HasInternet) return new ProcessOutput("", "No internet");
|
||||
|
||||
//Set the password for rclone configs
|
||||
Environment.SetEnvironmentVariable("RCLONE_CRYPT_REMOTE", rclonepw);
|
||||
Environment.SetEnvironmentVariable("RCLONE_CONFIG_PASS", rclonepw);
|
||||
ProcessOutput prcoutput = new ProcessOutput();
|
||||
//Rclone output is unicode, else it will show garbage instead of unicode characters
|
||||
rclone.StartInfo.StandardOutputEncoding = Encoding.UTF8;
|
||||
@@ -90,7 +87,7 @@ namespace AndroidSideloader
|
||||
rclone.WaitForExit();
|
||||
|
||||
//if there is one of these errors, we switch the mirrors
|
||||
if (error.Contains("cannot fetch token") || error.Contains("authError") || (error.Contains("quota") || error.Contains("exceeded") || error.Contains("directory not found")))
|
||||
if (error.Contains("400 Bad Request") || error.Contains("cannot fetch token") || error.Contains("authError") || error.Contains("quota") || error.Contains("exceeded") || error.Contains("directory not found") || error.Contains("couldn't list"))
|
||||
{
|
||||
string oldRemote = MainForm.currentRemote;
|
||||
try
|
||||
@@ -108,11 +105,13 @@ namespace AndroidSideloader
|
||||
prcoutput.Output = output;
|
||||
prcoutput.Error = error;
|
||||
}
|
||||
if (!output.Contains("Game Name;Release Name;") && !output.Contains("package:"))
|
||||
if (!output.Contains("Game Name;Release Name;") && !output.Contains("package:") && !output.Contains(".meta"))
|
||||
Logger.Log($"Rclone error: {error}\nRclone Output: {output}");
|
||||
if (error.Contains("There is not enough space"))
|
||||
if (output.Contains("There is not enough space"))
|
||||
{
|
||||
FlexibleMessageBox.Show("There isn't enough space on your PC to properly install this game. Please have at least 2x the size of the game you are trying to download/install available on the drive where Rookie is installed.", "NOT ENOUGH SPACE");
|
||||
return prcoutput;
|
||||
}
|
||||
return prcoutput;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
BIN
Resources/ajax-loader.gif
Normal file
BIN
Resources/ajax-loader.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 723 B |
@@ -35,10 +35,7 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
|
||||
}
|
||||
|
||||
//List of all installed package names from connected device
|
||||
public static Dictionary<string, string> InstalledPackages = new Dictionary<string, string>(); //Packagename and Version
|
||||
//public static List<string> InstalledPackageNames = new List<string>();
|
||||
|
||||
//Remove folder from device
|
||||
//public static List<string> InstalledPackageNames = new List<string>(); //Remove folder from device
|
||||
public static ProcessOutput RemoveFolder(string path)
|
||||
{
|
||||
ADB.WakeDevice();
|
||||
@@ -135,19 +132,11 @@ And all of them added to PATH, without ANY of them, the spoofer won't work!";
|
||||
{
|
||||
ADB.WakeDevice();
|
||||
ProcessOutput output = new ProcessOutput("", "");
|
||||
|
||||
string packageName = Sideloader.gameNameToPackageName(GameName);
|
||||
|
||||
DialogResult dialogResult = FlexibleMessageBox.Show($"Are you sure you want to uninstall {packageName}? this CANNOT be undone!", "WARNING!", MessageBoxButtons.YesNo);
|
||||
if (dialogResult != DialogResult.Yes)
|
||||
return output;
|
||||
|
||||
output = ADB.UninstallPackage(packageName);
|
||||
|
||||
//remove both data and obb if there is any
|
||||
Sideloader.RemoveFolder("/sdcard/Android/obb/" + packageName);
|
||||
Sideloader.RemoveFolder("/sdcard/Android/data/" + packageName);
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
@@ -253,11 +242,11 @@ 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 (!Directory.Exists(ADB.adbFolderPath)) //if there is no adb folder, download and extract
|
||||
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
|
||||
{
|
||||
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");
|
||||
}
|
||||
|
||||
|
||||
@@ -26,9 +26,9 @@ namespace AndroidSideloader
|
||||
|
||||
public static int GameNameIndex = 0;
|
||||
public static int ReleaseNameIndex = 1;
|
||||
public static int ReleaseAPKPathIndex = 2;
|
||||
public static int PackageNameIndex = 3;
|
||||
public static int VersionCodeIndex = 4;
|
||||
public static int PackageNameIndex = 2;
|
||||
public static int VersionCodeIndex = 3;
|
||||
public static int ReleaseAPKPathIndex = 4;
|
||||
public static int VersionNameIndex = 5;
|
||||
|
||||
public static List<string> gameProperties = new List<string>();
|
||||
@@ -85,36 +85,26 @@ namespace AndroidSideloader
|
||||
{
|
||||
gameProperties.Clear();
|
||||
games.Clear();
|
||||
string tempGameList = RCLONE.runRcloneCommand($"cat \"{remote}:{RcloneGamesFolder}/GameList.txt\"").Output;
|
||||
string tempGameList = RCLONE.runRcloneCommand($"cat \"{remote}:{RcloneGamesFolder}/VRP-GameList.txt\"").Output;
|
||||
if (MainForm.debugMode)
|
||||
File.WriteAllText("GamesList.txt", tempGameList);
|
||||
string gamePropertiesLine = Utilities.StringUtilities.RemoveEverythingAfterFirst(tempGameList, "\n");
|
||||
{
|
||||
File.WriteAllText("VRP-GamesList.txt", tempGameList);
|
||||
}
|
||||
|
||||
string[] gameListSplited = tempGameList.Split(new[] { '\n' }, 2);
|
||||
|
||||
foreach (string gameProperty in gamePropertiesLine.Split(';'))
|
||||
foreach (string gameProperty in gameListSplited[0].Split(';'))
|
||||
{
|
||||
gameProperties.Add(gameProperty);
|
||||
}
|
||||
gameProperties.Add("Modified Date");
|
||||
|
||||
|
||||
tempGameList = Utilities.StringUtilities.RemoveEverythingBeforeFirst(tempGameList, "\n");
|
||||
|
||||
List<rcloneFolder> gameFolders = JsonConvert.DeserializeObject<List<rcloneFolder>>(RCLONE.runRcloneCommand($"lsjson \"{remote}:{RcloneGamesFolder}\"").Output);
|
||||
|
||||
|
||||
foreach (string game in tempGameList.Split('\n'))
|
||||
foreach (string game in gameListSplited[1].Split('\n'))
|
||||
{
|
||||
if (game.Length > 1)
|
||||
{
|
||||
string[] splitGame = game.Split(';');
|
||||
|
||||
//gameFolder.find();
|
||||
|
||||
var gameFolder = gameFolders.Find((predicate) => predicate.Path == splitGame[1]);
|
||||
//splitGame[6] = gameFolder.ModTime;
|
||||
Array.Resize(ref splitGame, splitGame.Length + 1);
|
||||
splitGame[splitGame.Length - 1] = gameFolder.ModTime;
|
||||
games.Add(splitGame);
|
||||
//gameFolder.find();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ namespace AndroidSideloader
|
||||
private static string RawGitHubUrl;
|
||||
private static string GitHubUrl;
|
||||
|
||||
static readonly public string LocalVersion = "2.7.2";
|
||||
static readonly public string LocalVersion = "2.9.1";
|
||||
public static string currentVersion = string.Empty;
|
||||
public static string changelog = string.Empty;
|
||||
|
||||
@@ -54,13 +54,14 @@ namespace AndroidSideloader
|
||||
//Download new sideloader with version appended to file name so there is no chance of overwriting the current exe
|
||||
try
|
||||
{
|
||||
RCLONE.killRclone();
|
||||
ADB.RunAdbCommandToString("kill-server");
|
||||
var fileClient = new WebClient();
|
||||
ServicePointManager.Expect100Continue = true;
|
||||
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
|
||||
Logger.Log($"Downloading update from {RawGitHubUrl}/releases/download/v{currentVersion}/{AppName}.exe to {AppName} v{currentVersion}.exe");
|
||||
fileClient.DownloadFile($"{GitHubUrl}/releases/download/v{currentVersion}/{AppName}.exe", $"{AppName} v{currentVersion}.exe");
|
||||
fileClient.Dispose();
|
||||
|
||||
Logger.Log($"Starting {AppName} v{currentVersion}.exe");
|
||||
Process.Start($"{AppName} v{currentVersion}.exe");
|
||||
//Delete current version
|
||||
|
||||
22
Utilities/UpdateGameData.cs
Normal file
22
Utilities/UpdateGameData.cs
Normal file
@@ -0,0 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AndroidSideloader.Utilities
|
||||
{
|
||||
class UpdateGameData
|
||||
{
|
||||
public UpdateGameData(String gameName, String packageName, ulong installedVersionInt)
|
||||
{
|
||||
this.GameName = gameName;
|
||||
this.Packagename = packageName;
|
||||
this.InstalledVersionInt = installedVersionInt;
|
||||
}
|
||||
public string GameName { get; set; }
|
||||
public string Packagename { get; set; }
|
||||
|
||||
public ulong InstalledVersionInt { get; set; }
|
||||
}
|
||||
}
|
||||
31
Utilities/UploadGame.cs
Normal file
31
Utilities/UploadGame.cs
Normal file
@@ -0,0 +1,31 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AndroidSideloader.Utilities
|
||||
{
|
||||
class UploadGame
|
||||
{
|
||||
public UploadGame(string Uploadcommand, string Pckgcommand, string Uploadgamename, ulong Uploadversion)
|
||||
{
|
||||
this.Uploadcommand = Uploadcommand;
|
||||
this.Pckgcommand = Pckgcommand;
|
||||
this.Uploadgamename = Uploadgamename;
|
||||
this.Uploadversion = Uploadversion;
|
||||
}
|
||||
public UploadGame()
|
||||
{
|
||||
|
||||
}
|
||||
public string Uploadcommand { get; set; }
|
||||
|
||||
public string Pckgcommand { get; set; }
|
||||
|
||||
public string Uploadgamename { get; set; }
|
||||
|
||||
public ulong Uploadversion { get; set; }
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,43 +1,37 @@
|
||||
-----BEGIN PGP SIGNED MESSAGE-----
|
||||
Hash: SHA256
|
||||
RSL 2.9.0
|
||||
|
||||
RSL 2.7.2
|
||||
= Hotfix to remove errant entry from app list
|
||||
that would crash the program.
|
||||
|
||||
+ Fixed automated mirror switching to now try every
|
||||
single mirror (instead of stoping at highest and failing).
|
||||
RSL 2.9
|
||||
|
||||
+ Fixed BMBF automated drag and drop (zip/zips/folder of
|
||||
zips) song install. Settings is also now OPT OUT instead
|
||||
of OPT IN. It can be disabled in the settings menu.
|
||||
+ Updated ADB zip on repo and added a verification
|
||||
text file to ensure all users are on newest ADB,
|
||||
this should fix most obb issues. Upon first launch
|
||||
after this update Rookie will automatically obtain
|
||||
the latest ADB via this zip (7MB).
|
||||
|
||||
+ Dead mirrors will no longer cause the gamelist to fail
|
||||
to load, instead RSL will move on after 35 seconds of no
|
||||
list loading.
|
||||
+ Added AAPT to repo along with a timer + logic to
|
||||
detect packagename for automatic reinstall when drag
|
||||
and dropped installs fail.
|
||||
|
||||
+ Simplified Wireless ADB messages and also made it easier
|
||||
to enable or disable wireless ADB.
|
||||
+ Implemented Size(MB) column to see app size prior
|
||||
to clicking Download and Install.
|
||||
|
||||
+ Fixed bug where if mirror failed it said "No gamelist".
|
||||
= Cleaned up automatic reinstall on apk installation
|
||||
failure for Download and Install, it should work for
|
||||
most users now.
|
||||
|
||||
+ Fixed bug where if mirror failed to load RSL would ask
|
||||
users to donate every app on their device whether it was
|
||||
actually newer than the mirrors' version or not.
|
||||
= Adjusted code for mirror switching, should fix failure
|
||||
to load gameslist whatsoever on dead mirrors.
|
||||
|
||||
HFP
|
||||
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
= Fixed issue where after installing a game RSL would
|
||||
ask user to donate same clean files again. RSL will now
|
||||
only ask once per program load, as intended.
|
||||
|
||||
iQIzBAEBCAAdFiEEKjgtlwMyrpVu4TGfx/Rql1VoczcFAmEVXukACgkQx/Rql1Vo
|
||||
czdLaA//ZBZ6ar5Qxlg5bZ409cSCRT+9JRBWkH7GRZZ4X2aejgesHXkcsF9L+NRo
|
||||
cUjv/4s+lWCScY3EvzJg038Nr9zXUsZYdCfJuT1f3P3uBvEBP+XdtB0+1+bnSQnX
|
||||
QhjtyP0WwJJqDhiDINB0DHycHu68sGmvaqZXoksWkdrtU5xDpoOw540nkBhIEHTb
|
||||
anFNUBEdGsjafVj6ZhZ4dYOpewVsV+VJZbg5J7T7z/ZdYZunS6fTBjb7ho9CfnpF
|
||||
GaTsGrwf03GcBBv13wYkl5UwO7TZiv6U+hUDOv0bkHGmaSQWbto+1Nt5GEo7SPMh
|
||||
qOiVvLH0vr6RuLLeaKo2QGzKcOgr4sSSXfQFp70yiQGEP/UlIHGBXqRyJ0x/hAtV
|
||||
yD7ynTpVpVw5bh939lpmjtw2VHNoOzOG9fky9tp61jQSIjDYWGP39Ntow9fkLWyC
|
||||
Em4pHwHih1aWiHV91kzupWdSKIk8KKewcNIKXmxvV1A9zc6cxxyqnvYIcbOojg0i
|
||||
d10UmyF+Tjm5bVH5U+AVwNeaFEZiI6d4QrLgTDFl3klyunCj2FWPdJmCvUPxFSzV
|
||||
fRB5OWgRWnWB85tb63geNTJbbJURH1TJ88PWFn/3opgOEFTDu4UkRiuK6VviRQ8D
|
||||
F95CsnuCrHRBwBozozv2YHJ8rCi61i+vmXi95jPAVMQd0OmsR0o=
|
||||
=nH4m
|
||||
-----END PGP SIGNATURE-----
|
||||
- Removed filesize confirmation dialog when clicking
|
||||
download and install.
|
||||
|
||||
- Removed columns that were useless to users.
|
||||
|
||||
HFP
|
||||
|
||||
Reference in New Issue
Block a user