Skip to content

Commit

Permalink
Added scrcpy tool. This application mirrors Android devices (video an…
Browse files Browse the repository at this point in the history
…d audio) connected via USB
  • Loading branch information
ByteSnipers committed Jan 5, 2025
1 parent ad8368c commit 52b3c56
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 4 deletions.
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# ChangeLog

### 0.7.26
- ADDED: scrcpy (This application mirrors Android devices (video and audio) connected via USB)

### 0.7.25
- CHANGE: Updated command execution

Expand All @@ -10,7 +13,7 @@
- BUGFIX: Fixed bug mobSF installation

### 0.7.22
- Added: poetry dependency
- ADDED: poetry dependency

### 0.7.21
- CHANGE: new stable version
Expand Down
5 changes: 4 additions & 1 deletion mpt/console.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

from mpt import functions

__version__ = '0.7.25'
__version__ = '0.7.26'

from mpt import settings, logger
from mpt.config import Config
Expand Down Expand Up @@ -838,6 +838,7 @@ def cli():
app.add_argument('-p', '--pidcat', metavar='package-name', nargs='?', type=str, const='',
help='Show colored logcat for a specific application (<package name> optional)')
app.add_argument('-st', '--screenshot', help='Take a screenshot from device screen', action='store_true')
app.add_argument('-sc', '--screen-copy', help='Mirrors Android device screen connected via USB to host (scrcpy)', action='store_true')
app.add_argument('-D', '--fridump', help='Dump application memory', action='store_true')
app.add_argument('-b', '--backup', metavar='package-name', nargs='?', type=str, const='',
help='Backup an android application \n (<package name> optional)')
Expand Down Expand Up @@ -900,6 +901,8 @@ def cli():
run_pidcat_ex(package_name=args.pidcat)
if args.screenshot:
take_screenshot()
if args.screen_copy:
run_tool(["scrcpy"])
if args.fridump:
run_fridump()
if args.backup or type(args.backup) is str:
Expand Down
8 changes: 7 additions & 1 deletion mpt/functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -260,7 +260,7 @@ def install_http(package):
tool_url = settings.ANDROID_TOOLS[package]['url']
tool_dir = os.path.join(install_dir, settings.ANDROID_TOOLS[package]['dir'])

if tool_url.endswith('zip') or tool_url.endswith('tar.xz'):
if tool_url.endswith('zip') or tool_url.endswith('tar.xz') or tool_url.endswith('tar.gz'):
install_http_archive(package)
else:

Expand Down Expand Up @@ -322,6 +322,12 @@ def install_http_archive(package):
run_command(command=f'cd {download_dir}; wget -q {tool_url} -O {temp_archive_filename}; tar -xf {temp_archive_filename};',
print_output=True)

# handle tar.gz files
if tool_url.endswith('tar.gz'):
temp_archive_filename = 'download-tmp.tar.gz'
run_command(command=f'cd {download_dir}; wget -q {tool_url} -O {temp_archive_filename}; tar -xzf {temp_archive_filename};',
print_output=True)

# execute post instructions
if 'post' in settings.ANDROID_TOOLS[package]:
run_command(
Expand Down
11 changes: 10 additions & 1 deletion mpt/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@
'bin': os.path.join(conf.load_config('install-dir'), 'dex2jar/d2j-dex2jar.sh'),
'dir': 'dex2jar',
'install': 'http',
'post': 'mv dex-tools-v2.4 dex2jar'
'post': 'mv dex-tools-v2.4 dex2jar'
},
'janus': {
'url': 'https://github.com/ppapadatis/python-janus-vulnerability-scan',
Expand All @@ -239,6 +239,15 @@
'dir': 'kitty',
'install': 'local',
'post': 'curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin dest={} launch=n'.format(os.path.join(conf.load_config('install-dir'),'kitty'))
},
'scrcpy': {
# check version and replace file: https://github.com/Genymobile/scrcpy
'url': 'https://github.com/Genymobile/scrcpy/releases/download/v3.1/scrcpy-linux-x86_64-v3.1.tar.gz',
'info': 'Application mirrors Android devices (video and audio) connected via USB',
'bin': os.path.join(conf.load_config('install-dir'), 'scrcpy/scrcpy'),
'dir': 'scrcpy',
'install': 'http',
'post': 'mv scrcpy-linux-x86_64-v3.1 scrcpy'
}
}

Expand Down

0 comments on commit 52b3c56

Please sign in to comment.