Book Image

Android NDK: Beginner's Guide

By : Sylvain Ratabouil
Book Image

Android NDK: Beginner's Guide

By: Sylvain Ratabouil

Overview of this book

Table of Contents (18 chapters)
Android NDK Beginner's Guide Second Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Time for action – reading assets with the Asset manager


Let's create a class to read the Android asset files:

  1. Create jni/Resource.hpp to encapsulate the access to asset files. We are going to use the AAsset API defined in android/asset_manager.hpp (which is already included in android_native_app_glue.h).

    Declare the three main operations: open(), close(), and read(). We also need to retrieve the resource's path in getPath().

    The Android Asset management API entry point is an AAsetManager opaque structure. We can access asset files, represented by a second opaque structure AAsset, from it:

    #ifndef _PACKT_RESOURCE_HPP_
    #define _PACKT_RESOURCE_HPP_
    
    #include "Types.hpp"
    
    #include <android_native_app_glue.h>
    
    class Resource {
    public:
        Resource(android_app* pApplication, const char* pPath);
    
        const char* getPath() { return mPath; };
    
        status open();
        void close();
        status read(void* pBuffer, size_t pCount);
    
        bool operator==(const Resource& pOther);
    
    private:
        const...