androidperf

v0.2.1 suspicious
4.0
Medium Risk

ADB-based Android performance metric recorder with live TUI and HTML report

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package exhibits moderate risk due to incomplete metadata and potential shell execution risks. While direct evidence of malicious activity is lacking, these factors warrant further scrutiny.

  • Incomplete metadata and single-package maintainer
  • Potential risks associated with shell execution
Per-check LLM notes
  • Network: No network calls detected, which is normal and indicates no immediate risk from this aspect.
  • Shell: Shell execution is present but without additional context about the commands being executed, it's hard to determine if it's benign or risky. It could be part of legitimate functionality like running system diagnostics.
  • Obfuscation: No obfuscation patterns detected, suggesting low risk of malicious intent.
  • Credentials: No credential harvesting patterns detected, indicating safe handling of sensitive information.
  • Metadata: The author's information is incomplete and the maintainer has only one package, which may indicate a less established or potentially suspicious account.

📦 Package Quality Overall: Medium (5.0/10)

✦ High Test Suite 9.0

Test suite present — 4 test file(s) found

  • Test runner config found: pyproject.toml
  • 4 test file(s) detected (e.g. test_extras.py)
◈ Medium Documentation 5.0

Some documentation present

  • Detailed PyPI description (10789 chars)
○ Low Contributing Guide 4.0

No contributing guide or governance files found

  • Development Status classifier >= Beta
◈ Medium Type Annotations 5.0

Partial type annotation coverage

  • 124 type-annotated function signatures detected in source
○ Low Multiple Contributors 2.0

Single-author or unverifiable project

  • 1 unique contributor(s) across 10 commits in jitinsharma/androidperf
  • Single author with few commits — possibly a personal or throwaway project

🔬 Heuristic Checks

Outbound Network Calls

No suspicious network call patterns found

Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution score 2.0

Found 1 shell execution pattern(s)

  • try: self._proc = subprocess.Popen( cmd, stdout=subprocess.PIPE
Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

Email domain looks legitimate: gmail.com>

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository jitinsharma/androidperf appears legitimate

Maintainer History score 4.0

2 maintainer concern(s) found

  • Author name is missing or very short
  • Author "" appears to have only 1 package on PyPI (new or inactive account)
Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

💡 AI App Starter Prompt

Use this prompt to build a project with androidperf
Create a mini-application named 'AndroidPerfMonitor' that leverages the 'androidperf' package to monitor and analyze the performance of an Android device in real-time. This application should allow users to connect their Android devices via USB, initiate performance recording sessions, and visualize the results both through a live terminal user interface (TUI) and as an HTML report post-session. The application should have the following functionalities:

1. Device Connection: Users should be able to connect their Android devices using ADB. The app should automatically detect connected devices and list them.
2. Performance Metrics: Record various performance metrics such as CPU usage, memory usage, network activity, battery status, and GPU rendering times.
3. Real-Time Visualization: Display collected data in a live TUI that updates in real-time as the session progresses. The TUI should include graphs and charts for better visualization.
4. Session Management: Allow users to start, stop, and save performance recording sessions. Each session should be uniquely identifiable and storable.
5. HTML Report Generation: After stopping a session, generate an HTML report summarizing the recorded data with detailed insights and visualizations.
6. Customizable Recording Settings: Provide options for users to customize which performance metrics to record and the frequency of data collection.
7. User Interface: Develop a simple yet intuitive command-line interface for interacting with the application.

Utilize the 'androidperf' package to handle the low-level details of connecting to Android devices, collecting performance metrics, and generating reports. Focus on making the application easy to use and understand, ensuring it caters to both novice and experienced users.