Instalación
- Add InsForge dependencies to your project
Maven Central
GitHub Packages
First, create a GitHub Personal Access Token:
- Go to GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic)
- Select permission:
read:packages
Then configure your project using one of the following methods:Option A: Environment Variables
settings.gradle.kts (or build.gradle.kts):build.gradle.kts:Set environment variables before building: Option B: gradle.properties (Local Development)
Add credentials to your global Gradle properties file:~/.gradle/gradle.properties:settings.gradle.kts:build.gradle.kts:The ~/.gradle/gradle.properties file is stored outside your project, so credentials won’t be accidentally committed to version control.
- Initialize InsForge SDK
- Enable Logging (Optional)
For debugging, you can configure the SDK log level:
| Log Level | Description |
|---|
NONE | No logging (default, recommended for production) |
ERROR | Only errors |
WARN | Warnings and errors |
INFO | Informational messages |
DEBUG | Debug info (request method, URL, response status) |
VERBOSE | Full details (headers, request/response bodies) |
Use NONE or ERROR in production to avoid exposing sensitive data in logs.
Android Initialization
- Add Chrome Custom Tabs dependency to your
build.gradle.kts:
- Initialize InsForge SDK (With Chrome Custom Tabs and Session Storage)
- Use Jetpack DataStore for Session Storage (Optional)
from()
Obtener una instancia de depósito para operaciones de archivos.
Ejemplo
upload()
Cargar un archivo con una ruta/clave específica.
Parámetros
path (String) - Ruta/clave del archivo en el depósito
data (ByteArray) - Contenido del archivo como bytes
options (DSL block, optional) - Opciones de carga
UploadOptions
| Opción | Tipo | Descripción |
|---|
contentType | String? | Tipo MIME (por ejemplo, “image/jpeg”) |
upsert | Boolean | Sobrescribir si el archivo existe (predeterminado: false) |
metadata | Map\<String, String\>? | Metadatos personalizados |
Ejemplo
Cargar desde Android Uri
Los desarrolladores pueden usar la siguiente función para cargar archivos desde una Uri de Android:
uploadWithAutoKey()
Cargar un archivo con una clave única generada automáticamente.
Parámetros
filename (String) - Nombre de archivo original (utilizado para detección de extensión)
data (ByteArray) - Contenido del archivo como bytes
options (DSL block, optional) - Opciones de carga
Ejemplo
download()
Descargar un archivo como ByteArray.
Ejemplo
delete()
Eliminar un archivo del almacenamiento.
Ejemplo
createSignedUrl()
Crear una URL firmada para acceso temporal a un archivo.
Parámetros
path (String) - Ruta del archivo en el depósito
expiresIn (Int) - Tiempo de caducidad en segundos
Ejemplo
getDownloadUrl()
Obtener una URL de descarga para un archivo.
Ejemplo
list()
Listar archivos en un depósito con filtrado opcional.
Opciones de BucketListFilter
| Opción | Tipo | Descripción |
|---|
prefix | String? | Filtrar por prefijo de ruta |
limit | Int | Resultados máximos (predeterminado: 100) |
offset | Int | Desplazamiento de paginación (predeterminado: 0) |
sortBy | String? | Campo de ordenamiento |
sortOrder | SortOrder | ASC o DESC (predeterminado: ASC) |
Ejemplo
Gestión de depósitos
listBuckets()
Listar todos los depósitos de almacenamiento.
createBucket()
Crear un nuevo depósito de almacenamiento.
updateBucket()
Actualizar la configuración del depósito.
deleteBucket()
Eliminar un depósito de almacenamiento.
Carga avanzada
getUploadStrategy()
Obtener estrategia de carga para archivos grandes o cargas reanudables.
confirmUpload()
Confirmar una carga completada.