Storage

#include <obb.h>

#include <storage_manager.h>

Summary

Enumerations

Anonymous Enum 106{
  AOBB_STATE_MOUNTED = 1,
  AOBB_STATE_UNMOUNTED = 2,
  AOBB_STATE_ERROR_INTERNAL = 20,
  AOBB_STATE_ERROR_COULD_NOT_MOUNT = 21,
  AOBB_STATE_ERROR_COULD_NOT_UNMOUNT = 22,
  AOBB_STATE_ERROR_NOT_MOUNTED = 23,
  AOBB_STATE_ERROR_ALREADY_MOUNTED = 24,
  AOBB_STATE_ERROR_PERMISSION_DENIED = 25
}
enum
The different states of a OBB storage passed to AStorageManager_obbCallbackFunc().
Anonymous Enum 55{
  AOBBINFO_OVERLAY = 0x0001
}
enum
Flag for an obb file, returned by AObbInfo_getFlags().

Typedefs

AObbInfo typedef
struct AObbInfo
AObbInfo is an opaque type representing information for obb storage.
AStorageManager typedef
AStorageManager manages application OBB storage, a pointer can be obtained with AStorageManager_new().
AStorageManager_obbCallbackFunc)(const char *filename, const int32_t state, void *data) typedef
void(*
Callback function for asynchronous calls made on OBB files.

Functions

AObbInfo_delete(AObbInfo *obbInfo)
void
Destroy the AObbInfo object.
AObbInfo_getFlags(AObbInfo *obbInfo)
int32_t
Get the flags of an OBB file.
AObbInfo_getPackageName(AObbInfo *obbInfo)
const char *
Get the package name for the OBB.
AObbInfo_getVersion(AObbInfo *obbInfo)
int32_t
Get the version of an OBB file.
AObbScanner_getObbInfo(const char *filename)
Scan an OBB and get information about it.
AStorageManager_delete(AStorageManager *mgr)
void
Release AStorageManager instance.
AStorageManager_getMountedObbPath(AStorageManager *mgr, const char *filename)
const char *
Get the mounted path for an OBB.
AStorageManager_isObbMounted(AStorageManager *mgr, const char *filename)
int
Check whether an OBB is mounted.
AStorageManager_mountObb(AStorageManager *mgr, const char *filename, const char *key, AStorageManager_obbCallbackFunc cb, void *data)
void
Attempts to mount an OBB file.
AStorageManager_new()
Obtains a new instance of AStorageManager.
AStorageManager_unmountObb(AStorageManager *mgr, const char *filename, const int force, AStorageManager_obbCallbackFunc cb, void *data)
void
Attempts to unmount an OBB file.

Enumerations

Anonymous Enum 106

 Anonymous Enum 106

The different states of a OBB storage passed to AStorageManager_obbCallbackFunc().

Properties
AOBB_STATE_ERROR_ALREADY_MOUNTED

The OBB has already been mounted.

Can be returned as the status for callbacks made during asynchronous OBB actions.

AOBB_STATE_ERROR_COULD_NOT_MOUNT

The OBB could not be mounted by the system.

Can be returned as the status for callbacks made during asynchronous OBB actions.

AOBB_STATE_ERROR_COULD_NOT_UNMOUNT

The OBB could not be unmounted.

This most likely indicates that a file is in use on the OBB. Can be returned as the status for callbacks made during asynchronous OBB actions.

AOBB_STATE_ERROR_INTERNAL

There was an internal system error encountered while trying to mount the OBB.

Can be returned as the status for callbacks made during asynchronous OBB actions.

AOBB_STATE_ERROR_NOT_MOUNTED

A call was made to unmount the OBB when it was not mounted.

Can be returned as the status for callbacks made during asynchronous OBB actions.

AOBB_STATE_ERROR_PERMISSION_DENIED

The current application does not have permission to use this OBB.

This could be because the OBB indicates it's owned by a different package. Can be returned as the status for callbacks made during asynchronous OBB actions.

AOBB_STATE_MOUNTED

The OBB container is now mounted and ready for use.

Can be returned as the status for callbacks made during asynchronous OBB actions.

AOBB_STATE_UNMOUNTED

The OBB container is now unmounted and not usable.

Can be returned as the status for callbacks made during asynchronous OBB actions.

Anonymous Enum 55

 Anonymous Enum 55

Flag for an obb file, returned by AObbInfo_getFlags().

Properties
AOBBINFO_OVERLAY

overlay

Typedefs

AObbInfo

struct AObbInfo AObbInfo

AObbInfo is an opaque type representing information for obb storage.

AStorageManager

struct AStorageManager AStorageManager

AStorageManager manages application OBB storage, a pointer can be obtained with AStorageManager_new().

AStorageManager_obbCallbackFunc

void(* AStorageManager_obbCallbackFunc)(const char *filename, const int32_t state, void *data)

Functions

AObbInfo_delete

void AObbInfo_delete(
  AObbInfo *obbInfo
)

Destroy the AObbInfo object.

You must call this when finished with the object.

AObbInfo_getFlags

int32_t AObbInfo_getFlags(
  AObbInfo *obbInfo
)

Get the flags of an OBB file.

AObbInfo_getPackageName

const char * AObbInfo_getPackageName(
  AObbInfo *obbInfo
)

Get the package name for the OBB.

AObbInfo_getVersion

int32_t AObbInfo_getVersion(
  AObbInfo *obbInfo
)

Get the version of an OBB file.

AObbScanner_getObbInfo

AObbInfo * AObbScanner_getObbInfo(
  const char *filename
)

Scan an OBB and get information about it.

AStorageManager_delete

void AStorageManager_delete(
  AStorageManager *mgr
)

Release AStorageManager instance.

AStorageManager_getMountedObbPath

const char * AStorageManager_getMountedObbPath(
  AStorageManager *mgr,
  const char *filename
)

Get the mounted path for an OBB.

AStorageManager_isObbMounted

int AStorageManager_isObbMounted(
  AStorageManager *mgr,
  const char *filename
)

Check whether an OBB is mounted.

AStorageManager_mountObb

void AStorageManager_mountObb(
  AStorageManager *mgr,
  const char *filename,
  const char *key,
  AStorageManager_obbCallbackFunc cb,
  void *data
)

Attempts to mount an OBB file.

This is an asynchronous operation.

Since API level 33, this function can only be used to mount unencrypted OBBs, i.e. the

key 
parameter must be
null 
or an empty string. Note that even before API level 33, mounting encrypted OBBs didn't work on many Android device implementations. Applications should not assume any particular behavior when
key 
is nonempty.

AStorageManager_new

AStorageManager * AStorageManager_new()

Obtains a new instance of AStorageManager.

AStorageManager_unmountObb

void AStorageManager_unmountObb(
  AStorageManager *mgr,
  const char *filename,
  const int force,
  AStorageManager_obbCallbackFunc cb,
  void *data
)

Attempts to unmount an OBB file.

This is an asynchronous operation.