179b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn/* 279b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * Copyright (C) 2010 The Android Open Source Project 379b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * 479b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * Licensed under the Apache License, Version 2.0 (the "License"); 579b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * you may not use this file except in compliance with the License. 679b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * You may obtain a copy of the License at 779b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * 879b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * http://www.apache.org/licenses/LICENSE-2.0 979b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * 1079b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * Unless required by applicable law or agreed to in writing, software 1179b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * distributed under the License is distributed on an "AS IS" BASIS, 1279b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1379b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * See the License for the specific language governing permissions and 1479b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * limitations under the License. 1579b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn */ 1679b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn 1779b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn 1879b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn#ifndef ANDROID_ASSET_MANAGER_JNI_H 1979b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn#define ANDROID_ASSET_MANAGER_JNI_H 2079b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn 2179b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn#include <android/asset_manager.h> 2279b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn#include <jni.h> 2379b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn 2490887627f185ea795fd8620bb916bd14a9f51041David 'Digit' Turner#ifdef __cplusplus 2590887627f185ea795fd8620bb916bd14a9f51041David 'Digit' Turnerextern "C" { 2690887627f185ea795fd8620bb916bd14a9f51041David 'Digit' Turner#endif 2779b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn 2879b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn/** 2979b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * Given a Dalvik AssetManager object, obtain the corresponding native AAssetManager 3079b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * object. Note that the caller is responsible for obtaining and holding a VM reference 3179b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * to the jobject to prevent its being garbage collected while the native object is 3279b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn * in use. 3379b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn */ 3479b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne HackbornAAssetManager* AAssetManager_fromJava(JNIEnv* env, jobject assetManager); 3579b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn 3690887627f185ea795fd8620bb916bd14a9f51041David 'Digit' Turner#ifdef __cplusplus 3790887627f185ea795fd8620bb916bd14a9f51041David 'Digit' Turner}; 3890887627f185ea795fd8620bb916bd14a9f51041David 'Digit' Turner#endif 3979b946e8f2ccb552e1a3fe8222f660b9a76cc001Dianne Hackborn 4090887627f185ea795fd8620bb916bd14a9f51041David 'Digit' Turner#endif // ANDROID_ASSET_MANAGER_JNI_H 41