specdeviceinfo
Sister app · engineer edition

One screen.
Every readable field.

DeviceInfo Viewer is a tiny read-only Android app. It reads what the OS will surface — 15 categories, from emulator / root detection through cell towers, sensors, GPU strings, install source — and lays it out flat. No analysis, no score. Every value long-press-copyable, so what you see is what you paste into your report.

Read-only
No state changes
Dimensions
15
Android
5 – 16

Which app do you want?

Two apps, two audiences. They're written by the same team and share the same 84K-device reference database, but they exist for different jobs.

Buyer / consumer

DevCheck AI

Trust Score + AI analysis + IP reputation + shareable device certificate. For checking a phone before you pay for it. 7 MB.

Features →
Engineer / researcher

DeviceInfo Viewer (this one)

Raw dump of everything Android will surface, laid out flat. No analysis, no score. For debugging, privacy audits, anti-fraud research. Tiny APK.

15 dimensions →

Design choices that stand out

👁️

Read-only readout

Reads system state, doesn't modify it. Nothing to persist, nothing to break. You're inspecting your own phone, not changing it.

🪶

Tiny APK, zero deps

Pure Java + framework API. No native .so, no third-party libs. Universal ABI, drops onto any device.

📄

Values match what apps see

Same framework APIs any third-party app calls — so what you read here is what other apps read about your device.

🛡️

Risk signals up top

Emulator / Root / VPN / debug status shown as coloured badges at the top of the screen. Green = clean, red = hit.

📋

Long-press any value to copy

Fingerprint / getprop / /proc/cpuinfo / sensor list — every value is one long-press away from your clipboard.

📱

Android 5 → 16

Compat from API 21 through API 36. Fields locked down by newer Android are explicitly labelled (e.g. IMEI "restricted since Android 10").

15 dimensions, one screen

Everything on one long scroll of cards. Each section collapses independently.

🛡️
#01

Environment

Emulator, Root (su / Magisk / test-keys), VPN, debug state

🆔
#02

Device identifiers

Android ID, IMEI/MEID, IMSI, serial, ICCID, phone number, GAID, DRM ID, UA

📱
#03

System & model

Brand / manufacturer / model, fingerprint, full Build + Build.VERSION

⚙️
#04

Hardware

CPU model / cores / ABI, /proc/cpuinfo, frequency, NFC, system features

🧭
#05

Sensors

Full sensor inventory (name / vendor / type / version) — low count flagged red

💾
#06

Storage & memory

System / data / external partitions, free / total memory

🔋
#07

Battery

Level, charge counter, current, temperature, charging method

🌐
#08

Network

Carrier, IP, MAC, connected WiFi, WiFi scan list, proxy, Bluetooth address

📡
#09

Cell towers

Serving cell (GSM/CDMA), getAllCellInfo (GSM/CDMA/LTE neighbours)

📶
#10

SIM

SIM state, carrier, MCC / MNC, CarrierId

📍
#11

Location / locale / time

GPS state, lat/lng, country/language, timezone, boot time

🖥️
#12

Display

Resolution, DPI, refresh rate, brightness

🎮
#13

GPU

OpenGL vendor / version / extensions

🎵
#14

Media

Per-stream volume, image / audio counts, codecs

🧩
#15

System state

ADB debug, input method, install source, shared libs, Java properties

Permissions

What each permission is for

Every runtime permission below maps to a specific field on the panel. Deny any of them and the corresponding fields just show "not granted" — the rest of the app keeps working.

Permission use

READ_PHONE_STATE Carrier, SIM, network type
ACCESS_FINE / COARSE_LOCATION Cell towers, WiFi scan list, lat/lng
ACCESS_WIFI_STATE / ACCESS_NETWORK_STATE WiFi + network state
BLUETOOTH_CONNECT Bluetooth adapter name (one emulator signal)
READ_MEDIA_IMAGES / VIDEO (13+) or READ_EXTERNAL_STORAGE (≤12) Count photos / audio files

Strong identifiers (IMEI / IMSI / serial etc.) are locked down on Android 10+. Normal apps can't read them. The panel labels these fields as "restricted" honestly.

Download & install

viewer-release.apk
v1.1 · targetSdk 36 · com.deviceinsight.deviceviewer
Download APK
SHA-256
ce46c2f3d9301bcb935074e3a1efb2da4b43f1505a307d387c96514f71cb5fe5

Verify integrity after download:

shasum -a 256 deviceinfo-viewer-v1.1.apk
# should output the SHA-256 above, exactly

Install via adb

adb install deviceinfo-viewer-v1.1.apk

Install on-device

Copy the APK to your phone, tap it, allow "install from unknown sources" if prompted.

FAQ

Why does "debug state" show as "yes"?

That check is "is this app being debugged / built as debuggable" — nothing to do with your phone's USB debugging switch. A release build shows "no". For the phone-level USB debugging state, look under 🧩 System state → ADB debug.

Why can't I read IMEI / serial?

Android 10 (API 29) blocked normal apps from reading those. It's a system-level restriction, not a Viewer bug. The panel labels these fields "(restricted since Android 10)".

Some fields show "not granted"?

The corresponding runtime permission wasn't approved. Viewer doesn't nag — it skips those fields and shows the rest.

Grab it. Read every field.

Free. No account. Read the source truth of any Android you can install it on.