Bladeren bron

Fixed "Building Failed"

If your current logged user on name has space in it, the program will never work. Because https://github.com/AhMyth/AhMyth-Android-RAT/blob/master/AhMyth-Server/app/app/assets/js/controllers/AppCtrl.js#L129
execute the command without quotes on folder argument and it will return an error.
Example.
My pc ("Lara Vel") has space on its name, so this is the folder for AhMyth basepath : C:\Users\Lara Vel\AppData\Local\Programs\AhMyth
Since my user is "Lara Vel", AhMyth would exec build command like this
`java -jar apktool.jar b C:\Users\**Lara Vel**\AppData\Local\Programs\AhMyth\resources\app.asar.unpacked\app\Factory\Ahmyth -o C:\Users\**Lara Vel**\AppData\Local\Programs\AhMyth\resources\app.asar.unpacked\app\Factory\ahmyth.apk`

SOLUTION:
For next update, @AhMyth
Simply by giving double quotes between apkFolder and its output folder. This solutions must be implemented in every exec function with directory argument.
exec('java -jar ' + CONSTANTS.apktoolJar + ' b "' + apkFolder + '" -o "' + path.join(outputPath, CONSTANTS.apkName + '"')

Co-Authored-By: ahmyth <ahmyth@users.noreply.github.com>
Dida 6 jaren geleden
bovenliggende
commit
c156796390
2 gewijzigde bestanden met toevoegingen van 94 en 3 verwijderingen
  1. 91 0
      .gitignore
  2. 3 3
      AhMyth-Server/app/app/assets/js/controllers/AppCtrl.js

+ 91 - 0
.gitignore

@@ -0,0 +1,91 @@
+
+# Created by https://www.gitignore.io/api/node
+# Edit at https://www.gitignore.io/?templates=node
+
+### Node ###
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+lerna-debug.log*
+
+# Diagnostic reports (https://nodejs.org/api/report.html)
+report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
+
+# Runtime data
+pids
+*.pid
+*.seed
+*.pid.lock
+
+# Directory for instrumented libs generated by jscoverage/JSCover
+lib-cov
+
+# Coverage directory used by tools like istanbul
+coverage
+
+# nyc test coverage
+.nyc_output
+
+# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
+.grunt
+
+# Bower dependency directory (https://bower.io/)
+bower_components
+
+# node-waf configuration
+.lock-wscript
+
+# Compiled binary addons (https://nodejs.org/api/addons.html)
+build/Release
+
+# Dependency directories
+node_modules/
+jspm_packages/
+
+# TypeScript v1 declaration files
+typings/
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Optional REPL history
+.node_repl_history
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variables file
+.env
+.env.test
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+
+# next.js build output
+.next
+
+# nuxt.js build output
+.nuxt
+
+# vuepress build output
+.vuepress/dist
+
+# Serverless directories
+.serverless/
+
+# FuseBox cache
+.fusebox/
+
+# DynamoDB Local files
+.dynamodb/
+
+# End of https://www.gitignore.io/api/node

+ 3 - 3
AhMyth-Server/app/app/assets/js/controllers/AppCtrl.js

@@ -126,7 +126,7 @@ app.controller("AppCtrl", ($scope) => {
     $appCtrl.GenerateApk = (apkFolder) => {
 
         $appCtrl.Log('Building ' + CONSTANTS.apkName + '...');
-        var createApk = exec('java -jar ' + CONSTANTS.apktoolJar + ' b ' + apkFolder + ' -o ' + path.join(outputPath, CONSTANTS.apkName),
+        var createApk = exec('java -jar "' + CONSTANTS.apktoolJar + '" b "' + apkFolder + '" -o "' + path.join(outputPath, CONSTANTS.apkName) + '"',
             (error, stdout, stderr) => {
                 if (error !== null) {
                     $appCtrl.Log('Building Failed', CONSTANTS.logStatus.FAIL);
@@ -134,7 +134,7 @@ app.controller("AppCtrl", ($scope) => {
                 }
 
                 $appCtrl.Log('Signing ' + CONSTANTS.apkName + '...');
-                var signApk = exec('java -jar ' + CONSTANTS.signApkJar + ' ' + path.join(outputPath, CONSTANTS.apkName),
+                var signApk = exec('java -jar "' + CONSTANTS.signApkJar + '" "' + path.join(outputPath, CONSTANTS.apkName) + '"',
                     (error, stdout, stderr) => {
                         if (error !== null) {
                             $appCtrl.Log('Signing Failed', CONSTANTS.logStatus.FAIL);
@@ -335,7 +335,7 @@ app.controller("AppCtrl", ($scope) => {
 
                     var apkFolder = filePath.substring(0, filePath.indexOf(".apk"));
                     $appCtrl.Log('Decompiling ' + filePath + "...");
-                    var decompileApk = exec('java -jar ' + CONSTANTS.apktoolJar + ' d ' + filePath + ' -f -o ' + apkFolder,
+                    var decompileApk = exec('java -jar "' + CONSTANTS.apktoolJar + '" d "' + filePath + '" -f -o "' + apkFolder + '"',
                         (error, stdout, stderr) => {
                             if (error !== null) {
                                 $appCtrl.Log('Decompilation Failed', CONSTANTS.logStatus.FAIL);