Asset

Summary

Enumerations

Anonymous Enum 16{
  AASSET_MODE_UNKNOWN = 0,
  AASSET_MODE_RANDOM = 1,
  AASSET_MODE_STREAMING = 2,
  AASSET_MODE_BUFFER = 3
}
enum
Available access modes for opening assets with AAssetManager_open.

Typedefs

AAsset typedef
struct AAsset
AAsset provides access to a read-only asset.
AAssetDir typedef
struct AAssetDir
AAssetDir provides access to a chunk of the asset hierarchy as if it were a single directory.
AAssetManager typedef
struct AAssetManager
AAssetManager provides access to an application's raw assets by creating AAsset objects.

Functions

AAssetDir_close(AAssetDir *assetDir)
void
Close an opened AAssetDir, freeing any related resources.
AAssetDir_getNextFileName(AAssetDir *assetDir)
const char *
Iterate over the files in an asset directory.
AAssetDir_rewind(AAssetDir *assetDir)
void
Reset the iteration state of AAssetDir_getNextFileName() to the beginning.
AAssetManager_fromJava(JNIEnv *env, jobject assetManager)
Given a Dalvik AssetManager object, obtain the corresponding native AAssetManager object.
AAssetManager_open(AAssetManager *mgr, const char *filename, int mode)
AAsset *
Open an asset.
AAssetManager_openDir(AAssetManager *mgr, const char *dirName)
Open the named directory within the asset hierarchy.
AAsset_close(AAsset *asset)
void
Close the asset, freeing all associated resources.
AAsset_getBuffer(AAsset *asset)
const void *
Get a pointer to a buffer holding the entire contents of the assset.
AAsset_getLength(AAsset *asset)
off_t
Report the total size of the asset data.
AAsset_getLength64(AAsset *asset)
off64_t
Report the total size of the asset data.
AAsset_getRemainingLength(AAsset *asset)
off_t
Report the total amount of asset data that can be read from the current position.
AAsset_getRemainingLength64(AAsset *asset)
off64_t
Report the total amount of asset data that can be read from the current position.
AAsset_isAllocated(AAsset *asset)
int
Returns whether this asset's internal buffer is allocated in ordinary RAM (i.e.
AAsset_openFileDescriptor(AAsset *asset, off_t *outStart, off_t *outLength)
int
Open a new file descriptor that can be used to read the asset data.
AAsset_openFileDescriptor64(AAsset *asset, off64_t *outStart, off64_t *outLength)
int
Open a new file descriptor that can be used to read the asset data.
AAsset_read(AAsset *asset, void *buf, size_t count)
int
Attempt to read 'count' bytes of data from the current offset.
AAsset_seek(AAsset *asset, off_t offset, int whence)
off_t
Seek to the specified offset within the asset data.
AAsset_seek64(AAsset *asset, off64_t offset, int whence)
off64_t
Seek to the specified offset within the asset data.

Enumerations

Anonymous Enum 16

Declared in android/asset_manager.h
 Anonymous Enum 16

Available access modes for opening assets with AAssetManager_open.

Properties
AASSET_MODE_BUFFER

Caller plans to ask for a read-only buffer with all data.

AASSET_MODE_RANDOM

Read chunks, and seek forward and backward.

AASSET_MODE_STREAMING

Read sequentially, with an occasional forward seek.

AASSET_MODE_UNKNOWN

No specific information about how data will be accessed.

Typedefs

AAsset

Declared in android/asset_manager.h
struct AAsset AAsset

AAsset provides access to a read-only asset.

AAsset objects are NOT thread-safe, and should not be shared across threads.

AAssetDir

Declared in android/asset_manager.h
struct AAssetDir AAssetDir

AAssetDir provides access to a chunk of the asset hierarchy as if it were a single directory.

The contents are populated by the AAssetManager.

The list of files will be sorted in ascending order by ASCII value.

AAssetManager

Declared in android/asset_manager.h
struct AAssetManager AAssetManager

AAssetManager provides access to an application's raw assets by creating AAsset objects.

AAssetManager is a wrapper to the low-level native implementation of the java AAssetManager, a pointer can be obtained using AAssetManager_fromJava().

The asset hierarchy may be examined like a filesystem, using AAssetDir objects to peruse a single directory.

A native AAssetManager pointer may be shared across multiple threads.

Functions

AAssetDir_close

Declared in android/asset_manager.h
void AAssetDir_close(
  AAssetDir *assetDir
)

Close an opened AAssetDir, freeing any related resources.

AAssetDir_getNextFileName

Declared in android/asset_manager.h
const char * AAssetDir_getNextFileName(
  AAssetDir *assetDir
)

Iterate over the files in an asset directory.

A NULL string is returned when all the file names have been returned.

The returned file name is suitable for passing to AAssetManager_open().

The string returned here is owned by the AssetDir implementation and is not guaranteed to remain valid if any other calls are made on this AAssetDir instance.

AAssetDir_rewind

Declared in android/asset_manager.h
void AAssetDir_rewind(
  AAssetDir *assetDir
)

Reset the iteration state of AAssetDir_getNextFileName() to the beginning.

AAssetManager_fromJava

Declared in android/asset_manager_jni.h
AAssetManager * AAssetManager_fromJava(
  JNIEnv *env,
  jobject assetManager
)

Given a Dalvik AssetManager object, obtain the corresponding native AAssetManager object.

Note that the caller is responsible for obtaining and holding a VM reference to the jobject to prevent its being garbage collected while the native object is in use.

AAssetManager_open

Declared in android/asset_manager.h
AAsset * AAssetManager_open(
  AAssetManager *mgr,
  const char *filename,
  int mode
)

Open an asset.

The object returned here should be freed by calling AAsset_close().

AAssetManager_openDir

Declared in android/asset_manager.h
AAssetDir * AAssetManager_openDir(
  AAssetManager *mgr,
  const char *dirName
)

Open the named directory within the asset hierarchy.

The directory can then be inspected with the AAssetDir functions. To open the top-level directory, pass in "" as the dirName.

The object returned here should be freed by calling AAssetDir_close().

AAsset_close

Declared in android/asset_manager.h
void AAsset_close(
  AAsset *asset
)

Close the asset, freeing all associated resources.

AAsset_getBuffer

Declared in android/asset_manager.h
const void * AAsset_getBuffer(
  AAsset *asset
)

Get a pointer to a buffer holding the entire contents of the assset.

Returns NULL on failure.

AAsset_getLength

Declared in android/asset_manager.h
off_t AAsset_getLength(
  AAsset *asset
)

Report the total size of the asset data.

AAsset_getLength64

Declared in android/asset_manager.h
off64_t AAsset_getLength64(
  AAsset *asset
)

Report the total size of the asset data.

Reports the size using a 64-bit number insted of 32-bit as AAsset_getLength.

AAsset_getRemainingLength

Declared in android/asset_manager.h
off_t AAsset_getRemainingLength(
  AAsset *asset
)

Report the total amount of asset data that can be read from the current position.

AAsset_getRemainingLength64

Declared in android/asset_manager.h
off64_t AAsset_getRemainingLength64(
  AAsset *asset
)

Report the total amount of asset data that can be read from the current position.

Uses a 64-bit number instead of a 32-bit number as AAsset_getRemainingLength does.

AAsset_isAllocated

Declared in android/asset_manager.h
int AAsset_isAllocated(
  AAsset *asset
)

Returns whether this asset's internal buffer is allocated in ordinary RAM (i.e.

not mmapped).

AAsset_openFileDescriptor

Declared in android/asset_manager.h
int AAsset_openFileDescriptor(
  AAsset *asset,
  off_t *outStart,
  off_t *outLength
)

Open a new file descriptor that can be used to read the asset data.

If the start or length cannot be represented by a 32-bit number, it will be truncated. If the file is large, use AAsset_openFileDescriptor64 instead.

Returns < 0 if direct fd access is not possible (for example, if the asset is compressed).

AAsset_openFileDescriptor64

Declared in android/asset_manager.h
int AAsset_openFileDescriptor64(
  AAsset *asset,
  off64_t *outStart,
  off64_t *outLength
)

Open a new file descriptor that can be used to read the asset data.

Uses a 64-bit number for the offset and length instead of 32-bit instead of as AAsset_openFileDescriptor does.

Returns < 0 if direct fd access is not possible (for example, if the asset is compressed).

AAsset_read

Declared in android/asset_manager.h
int AAsset_read(
  AAsset *asset,
  void *buf,
  size_t count
)

Attempt to read 'count' bytes of data from the current offset.

Returns the number of bytes read, zero on EOF, or < 0 on error.

AAsset_seek

Declared in android/asset_manager.h
off_t AAsset_seek(
  AAsset *asset,
  off_t offset,
  int whence
)

Seek to the specified offset within the asset data.

'whence' uses the same constants as lseek()/fseek().

Returns the new position on success, or (off_t) -1 on error.

AAsset_seek64

Declared in android/asset_manager.h
off64_t AAsset_seek64(
  AAsset *asset,
  off64_t offset,
  int whence
)

Seek to the specified offset within the asset data.

'whence' uses the same constants as lseek()/fseek().

Uses 64-bit data type for large files as opposed to the 32-bit type used by AAsset_seek.

Returns the new position on success, or (off64_t) -1 on error.