O que é o formato de ficheiro OBB?
Um arquivo .obb contém recursos para um app Android armazenados como um «blob» binário opaco - daí o nome BLOB. Introduzido como parte do sistema de Arquivos de Expansão APK do Android para superar o limite de tamanho de APK da Play Store, os arquivos .obb carregam grandes ativos de jogo, como texturas, áudio e dados de nível que transbordam do pacote .apk base. Os arquivos são opcionalmente criptografados e são normalmente armazenados na pasta Android/obb/<nome.do.pacote>/ no armazenamento interno ou cartão SD.
Um único arquivo .obb só pode ser usado por um único aplicativo, ou compartilhado por aplicativos que receberam acesso a ele. O gerenciamento de arquivos .obb é feito através da interface StorageManager do Android. Se um arquivo .obb estiver criptografado, apenas o aplicativo que criou o arquivo pode descriptografá-lo. É aconselhável não remover manualmente os arquivos .obb, pois isso pode ter um impacto negativo no aplicativo que os utiliza.
Internamente, muitos arquivos .obb seguem o formato de contêiner ZIP (identificável pelos magic bytes PK) e podem ser abertos com ferramentas de arquivamento ao renomear o arquivo. Quando os desenvolvedores aplicam criptografia ou usam motores como Unity ou Unreal Engine, o layout é personalizado e o formato é verdadeiramente opaco por design. A Google agora recomenda o Play Asset Delivery com App Bundles .aab como o substituto moderno.
Segurança e proteção
RISCO: MEDIUMOBBs da Google Play são seguros. O risco está no sideloading: um OBB emparelhado com um APK crackeado/modificado de um site de pirataria pode carregar ativos adulterados ou maliciosos, e o APK correspondente (não o OBB) é o real vetor de malware. Apenas coloque arquivos OBB de fontes em que você confia, mantenha o APK e o OBB da mesma versão e nunca execute um APK de jogo modificado que você não possa verificar. Os dados internos são opacos, então você não pode auditá-los facilmente.
Detalhes do formato
em resumoProgramas que abrem arquivos OBB
Detalhes técnicos
especificação profunda| Formato de contêiner | Arquivo ZIP (assinatura PK) quando não criptografado; binário personalizado opaco para variantes criptografadas ou específicas de motor - sem assinatura de arquivo garantida |
| Magic bytes típicos | 50 4B 03 04 (cabeçalho ZIP PK) para arquivos não criptografados; sem assinatura fixa para variantes criptografadas ou de contêiner personalizado |
| Tipo MIME | application/octet-stream |
| Caminho de armazenamento no dispositivo | Android/obb/<nome.do.pacote>/ no armazenamento interno ou cartão SD removível |
| Convenção de nomenclatura de arquivo | [main|patch].<código-da-versão>.<nome-do-pacote>.obb |
| Variantes de arquivo de expansão | Dois tipos por app: main (recursos primários grandes) e patch (atualização incremental menor) |
| Tamanho máximo de arquivo | Até 2 GB por arquivo; a Play Store permite um arquivo de expansão main e um patch por app |
| Criptografia | Criptografia opcional em nível de aplicativo; apenas o app proprietário pode descriptografar usando uma chave incluída no APK |
| API Android | StorageManager.mountObb() / unmountObb() para montagem; APK Expansion Downloader Library para entrega via Play |
| Conteúdo típico de ativos | Texturas de jogo, faixas de áudio, cutscenes de vídeo, modelos 3D, dados de nível |
| Suporte a motores | Unity (plugin de expansão Gradle), Unreal Engine (dados PAK dentro do OBB) e motores de jogo personalizados |
| Propósito | Supera o limite de tamanho de APK da Play Store (originalmente 50 MB) hospedando grandes ativos separadamente nos servidores da Google |
| Tecnologia sucessora | Google Play Asset Delivery combinado com AAB App Bundles, recomendado pela Google desde 2019 |
| Requisito de plataforma | Android 2.3 (API nível 9) ou posterior; a API de download de arquivo de expansão requer Google Play Services |
| Lançado | 2012 (Android APK Expansion Files, to bypass the early 50 MB Play Store APK size limit) |
| Padrão aberto | Sim · livre de royalties |
| Especificação | developer.android.com |