Skip to content
SafetyBy the Apkora editorial teamUpdated October 17, 20264 min read

How to Check Whether an APK Is Safe Before You Install It

Padlock over a blue circuit board pattern representing device security

Image: jaydeep_, CC0, via Wikimedia Commons

No single tool can promise that an APK is safe. Safety comes from several small checks that, together, make it much harder for a fake or tampered file to reach your phone. This guide lists the checks in the order that is easiest to do, and ends with what to do if you have already installed something you do not trust.

Why APKs from random sites are risky

Apps in Google Play go through automated review and ongoing scanning. A file from a random website has none of that. Attackers copy popular apps, add code that shows ads, steals logins or reads messages, and re-upload them under a similar name. The icon and screenshots look identical, so the file looks genuine until you check it properly.

Check 1: Confirm the source

Use the developer’s own website, or a listing that clearly links to the official Google Play page for the same app. Be wary of pages that hide the developer name, show several fake download buttons, or tell you to switch off Play Protect. A trustworthy page never needs that.

Check 2: Compare the package name and developer

Every Android app has a package name, a unique ID such as com.example.notes. On Google Play the package name appears in the web address after id=. Compare it with the one on the page you are downloading from. If the listing says one thing and the file reports another, walk away. After installing, Settings, Apps and the app’s entry also show the developer name.

Check 3: Verify the file hash

Some developers publish a SHA-256 hash, a long string that identifies the exact file. If yours is published, compute the hash of your download and compare. On Windows run certutil -hashfile app.apk SHA256 in Command Prompt. On macOS or Linux run sha256sum app.apk. If even one character differs, the file is not the one the developer released.

Check 4: Compare the signing certificate

Every genuine app is signed by its developer’s key. Android only lets an update install over an existing app if the signatures match, which is why a tampered copy cannot silently replace the real one. If you have the Android SDK build-tools, run apksigner verify --print-certs app.apk and compare the certificate fingerprint with the one for the Google Play version. This check is advanced, but it is the most reliable way to show who built the file.

Check 5: Scan the file, then interpret the result

Upload the APK to VirusTotal, which runs it through dozens of antivirus engines. A clean report is encouraging but not a guarantee, because new malware can pass for a while. A report with several detections from respected engines is a clear reason to delete the file. One or two vague detections on a game or tool may be false alarms, so read the detection names before judging.

Check 6: Read the permissions

Permissions should fit what the app does. Compare these examples:

App type Reasonable Suspicious
Flashlight Camera (for the flash) SMS, contacts, microphone
Calculator None Location, contacts, accessibility
Messaging app Contacts, notifications, camera Device admin
Game Network access, storage for saves Read SMS, accessibility service

Be especially careful with the Accessibility service and Device admin permissions. They give an app very broad control, and malware often asks for them.

Android phone lock screen waiting for a PIN
A PIN, fingerprint or face lock limits what a stranger can do if your phone is lost or tampered with. Image: Acabashi, CC BY-SA 4.0, via Wikimedia Commons

Check 7: Let Play Protect take a look

Open Google Play, tap your profile icon, choose Play Protect and make sure scanning of apps is switched on. It can scan apps from other sources, including APKs you install by hand.

Red flags worth walking away from

  • The page asks you to disable Play Protect or your antivirus.
  • The download is a small installer that fetches the real app later.
  • A paid app is offered for free with unlimited everything. Cracked and modified apps are a common way to spread malware and they break the developer’s terms.
  • The file is much smaller or larger than the official app.
  • The page relies on shortened links, countdown timers and several fake buttons.

Protect your accounts

Do not sign into your main Google account inside an app you are unsure about. Use a separate account where a login is required, and turn on two-step verification for the accounts that matter.

What to do if you installed something suspicious

  1. Turn on airplane mode to cut off any connection.
  2. Open Settings, Apps and uninstall the app. If the Uninstall button is greyed out, open the device admin apps list under your security settings and remove its admin rights first.
  3. Run a Play Protect scan from the Play Store.
  4. Change the passwords you used since installing it, starting with your email and banking.
  5. If strange behaviour continues, back up your photos and contacts and reset the phone to factory settings.

When you are ready to install, follow the step-by-step install guide. If the install fails, see this troubleshooting guide.

How Android limits the damage

Android runs every app in a sandbox, so one app cannot read another app’s data, and it asks for permission before an app touches your camera, location or contacts. These protections are strong, but they only work if you do not grant dangerous permissions to the wrong app. Keep the phone updated, because security patches fix the flaws that malicious apps try to exploit.

A short routine for every new APK

  1. Find the developer page or the official Google Play listing and compare the package name.
  2. Download the file and compare its size and version with the listing.
  3. Scan it, then read the detection names rather than only the count.
  4. Install it with the permission you gave to one app, then switch that permission off.
  5. Open the app and decline any permission that does not fit its purpose.