Android package (.apk)
.apk file signature | application/vnd.android.package-archive
Android Package (APK) is the package file format used by Android applications, developed and maintained by Google through the Android platform. It is used to distribute and install apps, bundling application code, resources, manifest data, and signing information for devices and compatible emulators. APK files should be obtained from trusted sources, as modified packages can contain malware; newer Android versions also enforce stricter app-signing and installation controls.
Magic Bytes
Offset 0
50 4B 03 04
Sources: Wikipedia, Gary Kessler
All Known Signatures
3 signature variants are documented for .apk files across multiple sources.
| Hex Signature | Offset | Sources |
|---|---|---|
| 50 4B 03 04 | 0 | Wikipedia, Gary Kessler |
| 50 4B 05 06 | 0 | Wikipedia |
| 50 4B 07 08 | 0 | Wikipedia |
Extension
.apk
MIME Type
application/vnd.android.package-archive
Byte Offset
0
Risk Level
Safe
Validation Code
How to validate .apk files in Python
def is_apk(file_path: str) -> bool:
"""Check if file is a valid APK by magic bytes."""
signature = bytes([0x50, 0x4B, 0x03, 0x04])
with open(file_path, "rb") as f:
return f.read(4) == signature
How to validate .apk files in Node.js
function isAPK(buffer: Buffer): boolean {
const signature = Buffer.from([0x50, 0x4B, 0x03, 0x04]);
return buffer.subarray(0, 4).equals(signature);
}
How to validate .apk files in Go
func IsAPK(data []byte) bool {
signature := []byte{0x50, 0x4B, 0x03, 0x04}
if len(data) < 4 {
return false
}
return bytes.Equal(data[:4], signature)
}
API Endpoint
/api/v1/apk
curl https://filesignature.org/api/v1/apk
See the full API documentation for all endpoints and parameters.
Related Formats
Frequently Asked Questions
What is a .apk file?
A .apk file is a Android package file. Android Package (APK) is the package file format used by Android applications, developed and maintained by Google through the Android platform. It is used to distribute and install apps, bundling application code, resources, manifest data, and signing information for devices and compatible emulators. APK files should be obtained from trusted sources, as modified packages can contain malware; newer Android versions also enforce stricter app-signing and installation controls.
What are the magic bytes for .apk files?
The magic bytes for Android package files are 50 4B 03 04 at byte offset 0. These bytes uniquely identify the file format regardless of the file extension.
How do I validate a .apk file?
To validate a .apk file, read the first bytes of the file and compare them against the known magic bytes (50 4B 03 04) at offset 0. This is more reliable than checking the file extension alone, as extensions can be renamed.
What is the MIME type for .apk files?
The primary MIME type for .apk files is application/vnd.android.package-archive.
Is it safe to open .apk files?
Android package (.apk) files are generally safe to open. They are classified as low risk because they primarily contain data rather than executable code. However, always ensure files come from a trusted source.