Find the symptom, try the listed fix, and check the expected result. Start with the first fix and stop when the application works.
Android Analysis StudioiPhone Forensics Studio
Showing all problems
Start here
These checks solve most setup and connection failures.
Android quick reset
Use desktop Chrome or Edge and open the page directly over HTTPS.
Unlock the phone; enable Developer options and USB debugging.
Use a data cable, select File transfer, and connect directly to the computer.
Close Android Studio and other ADB tools. Run adb kill-server if ADB is installed.
Connect in the page and approve Allow USB debugging on the phone.
iPhone quick reset
Extract the complete ZIP; do not run it from the ZIP preview.
Open a terminal in the folder containing Start_iPhone_Studio.py.
Run each setup command separately and use the same .venv Python throughout.
Keep the launcher terminal open and use the new 127.0.0.1 page it opens.
Unlock the iPhone, use a data cable, and approve Trust This Computer.
Android Analysis Studio
If this is the problem, try the fix directly below it.
AndroidBrowserThe page says “WebUSB unavailable.”
Try this
Open the page in desktop Google Chrome or Microsoft Edge.
Do not use Firefox, Safari, an in-app browser, or a phone browser.
Open the page directly, rather than inside an LMS or website preview frame.
Confirm the address begins with https:// or is served from localhost.
Expected: The Connect page reports WebUSB as Available.
AndroidPage setupThe page says “Secure context: No” or USB is blocked by page policy.
Try this
Use the hosted HTTPS page. For a downloaded copy, serve it locally instead of opening an insecure remote HTTP page:
py -m http.server 8000 --bind 127.0.0.1
Then open http://localhost:8000/Android_Analysis_Studio.html. If the page is embedded, open it in its own tab. A site administrator hosting the page may need the response header Permissions-Policy: usb=(self).
Disconnect the phone and keep its screen unlocked and awake.
Open Developer options and select Revoke USB debugging authorizations.
Turn USB debugging off, wait five seconds, and turn it on again.
Close other ADB tools and run adb kill-server if available.
Reconnect, select the phone in the page, and immediately approve Allow USB debugging on the phone.
The browser’s USB permission is only the first approval. Android must separately approve the webpage’s temporary ADB key.
Expected: The page reports “Connected and authorized.”
AndroidAuthorizationThe “Allow USB debugging?” prompt never appears on the phone.
Try this
Unlock the phone to its Home screen and lengthen the screen timeout.
Revoke USB debugging authorizations, then toggle USB debugging off and on.
Change USB mode to File transfer and reconnect while the webpage is waiting.
Try another known-good data cable and a direct USB port.
On Samsung, check whether Auto Blocker is blocking USB commands.
Restart the phone if the prompt still does not appear.
Expected: The phone displays the RSA fingerprint authorization prompt.
AndroidSamsungA Samsung phone charges but will not allow debugging.
Try this
Confirm USB debugging is enabled in Developer options.
Open Settings → Security and privacy → Auto Blocker.
On an authorized training phone, temporarily turn off the feature that blocks USB commands.
Reconnect, authorize the session, and restore the security setting when the exercise ends.
Expected: The phone exposes its ADB interface and displays the authorization prompt.
AndroidConnectionThe phone connects and then immediately disconnects.
Try this
Replace the cable with a short, known-good data cable.
Use a direct rear USB port on a desktop, or another port on a laptop.
Keep the screen unlocked and prevent sleep during the lab.
Close competing ADB and phone-sync applications.
Disable USB power saving for the affected hub only if your organization permits it.
Expected: The status remains LIVE USB while commands are run.
AndroidCommandsA command says “permission denied,” returns blank output, or a property is unavailable.
Try this
Confirm the phone is still connected and authorized.
Try another allowed command such as id or getprop ro.product.model.
Record the denied or unavailable result in the report.
Do not root or unlock the phone merely to increase access.
Modern Android, work profiles, and manufacturer policy can limit what the shell user sees. Missing data means unknown; it does not prove absence.
AndroidCommandsA normal shell command such as cd, a pipe, or command chaining is rejected.
Try this
This application intentionally accepts only its listed read-oriented commands. Type help in the Command lab to see the allowlist. Use Files & hashes to browse the permitted shared folders.
AndroidFilesA folder is empty, a file cannot be copied, or the browser blocks the download.
Try this
Confirm the selected folder is in scope and shell-readable.
Check the application’s 64 MiB per-file limit.
Allow downloads for the site in the browser.
Copy APK splits individually. Symlinks and special files are deliberately blocked.
Record files that disappear or change during the live session.
Expected: A successful copy records byte count and SHA-256 and then offers a local download.
AndroidAuthorizationThe phone asks for authorization again after the page is refreshed.
Try this
This is expected. The application creates a temporary ADB key in page memory and discards it when the page closes or reloads. Approve the new prompt for the session you initiated. Avoid permanent trust on shared classroom computers.
Expected: Each fresh page session can require a new phone authorization.
iPhone Forensics Studio
Use the local Python page for a connected iPhone or full database analysis.
iPhoneInstallationThe launcher reports a missing file or module.
Try this
Use Download local utility (complete ZIP) in the application.
Select Extract All; do not run files from the ZIP preview.
Confirm these are together: Start_iPhone_Studio.py, Check_Setup.py, forensic_core.py, iPhone_Forensics_Studio.html, and synthetic_backup.
Open the terminal in that exact folder.
Expected:Check_Setup.py --self-test can locate all companion files.
iPhoneWindows path“The system cannot find the path specified” for .venv\Scripts\python.exe.
Try this
In File Explorer, open the folder containing Start_iPhone_Studio.py.
On macOS/Linux, replace .\.venv\Scripts\python.exe with .venv/bin/python.
Expected: The setup check reports the USB dependency from the same environment used by the launcher.
iPhoneLocal helperThe website still says “BROWSER MODE” or “local helper not connected.”
Try this
Start Start_iPhone_Studio.py and keep its terminal window open.
Use the new browser page the launcher opens, whose address begins with http://127.0.0.1:.
If no browser opens, copy the complete local address printed in the terminal and paste it into Chrome or Edge.
Do not return to the public website for USB scanning.
Expected: The banner says LOCAL HELPER CONNECTED and the iPhone scan control becomes available after authorization is checked.
iPhoneScan button“Scan connected iPhones” is disabled or cannot be selected.
Try this
Confirm you are using the 127.0.0.1 page opened by the Python launcher.
Confirm the page shows LOCAL HELPER CONNECTED.
Open Connect iPhone.
Read and check the examination-authorization checkbox.
Confirm the USB dependency passes Check_Setup.py.
Expected: The scan button becomes enabled.
iPhoneConnectionThe scan runs, but no iPhone is listed.
Try this
Unlock the iPhone and connect it with a data-capable cable.
Try another direct USB port and cable; remove hubs.
On Windows, confirm the iPhone appears in the current Apple Devices app and that Apple device services are installed.
On macOS, approve Allow accessory to connect if shown.
Close Apple Devices, iTunes, Finder device windows, and other tools that may be using the phone; then scan again.
Review the launcher’s process log for device-library errors.
Expected: The Studio lists the phone’s identifier for selection.
iPhoneTrustThe “Trust This Computer?” prompt does not appear.
Try this
Unlock the iPhone with its passcode and reconnect it.
Read device information again in the Studio.
Restart the iPhone and computer if the prompt remains absent.
As a later step, go to Settings → General → Transfer or Reset iPhone → Reset → Reset Location & Privacy, then reconnect.
Reset Location & Privacy changes other privacy permissions too. Use it only on an authorized training phone and record the change.
Expected: The iPhone asks whether to trust the computer; select Trust and enter the phone passcode.
iPhoneTrustThe phone is listed, but reading device information or pairing fails.
Try this
Keep the phone unlocked and respond to both computer and phone trust prompts.
Disconnect, reconnect, and select the correct device identifier.
Close competing backup and synchronization software.
Verify the computer’s date and time are correct.
Check for device-management policy that blocks pairing or backups.
Read the process log and preserve the exact error.
Expected: Read device information completes before acquisition is attempted.
iPhoneLauncherThe launcher appears to hang, does nothing, or no browser opens.
Try this
Look for a local address in the terminal. A running server normally waits quietly for browser requests.
Copy the complete http://127.0.0.1:PORT/… address into the browser.
If the terminal shows an error, stop with Ctrl+C and run Check_Setup.py --self-test.
Close an older Studio process if the port is already in use, then relaunch.
Allow loopback traffic if endpoint-security software blocks connections to 127.0.0.1.
Expected: The terminal remains open and the local browser page loads.
iPhoneAcquisitionThe logical backup fails, stops, or is cancelled.
Try this
Keep the phone unlocked, connected, and awake.
Confirm trust and read device information before starting the backup.
Close Apple Devices, iTunes, Finder device windows, and competing forensic tools.
Make sure the application drive has enough free space for the backup plus working copies.
Read the job and process logs for the exact failing stage.
Treat partial output as incomplete and retain its status with the case notes.
Expected: The job reports a completed backup and a valid output location before parsing begins.
iPhoneEncrypted backupAn encrypted backup produces no results with the independent core.
Try this
This is expected. The independent core does not decrypt encrypted backups. Use a separately configured compatible external parser and the known backup password through the launcher’s terminal workflow.
Do not disable backup encryption, reset a password, or alter the phone simply to make the core parser work.
iPhoneAnalysisMessages, calls, Safari, contacts, or another category is empty or unsupported.
Try this
Check whether the backup is encrypted and whether analysis completed.
Review Processing coverage, source inventory, sidecar warnings, and module errors.
Confirm the expected database payload was included in the logical backup.
Compare the result with a separately validated parser when necessary.
Report the category as unavailable, empty, incomplete, or unsupported using the actual status.
A zero count does not prove that no activity occurred.
iPhoneMessagesA message’s text is blank or shows an attributed-body placeholder.
Try this
The text may be stored in an attributed-body archive or attachment that the independent core intentionally does not decode. Preserve the record ID and source, then compare it with the native output of a compatible external parser.
Expected: The absence is documented as a decoding limitation, not interpreted as an empty message.
iPhonePerformanceA large backup is very slow or reaches a source, row, or query limit.
Try this
Review the job log to distinguish active hashing from a stalled operation.
Stop the job if it has failed rather than repeatedly starting another copy.
Use the Studio for its supported teaching-scale analysis.
For large evidence sets, move to a separately validated native analysis workflow and preserve the Studio’s limits in the report.
No troubleshooting card matches that search. Try fewer words or select “All problems.”