diff options
author | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2015-10-11 01:52:39 +0200 |
---|---|---|
committer | Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> | 2015-10-11 02:03:43 +0200 |
commit | 143fb0a4b5d4ab69d4928299d8112ab95d99870a (patch) | |
tree | 094673c521e14d4ba52fd706acba07be96bead49 /android/Bootstrap | |
parent | ee8257a1c70eadb7330b0ee99ec3b86fe4084bdf (diff) |
move extracting assets to Java & use AssetManager to access assets
using AssetsManager in both java as well as native parts allows to
handle files both with and without compression transparently
Change-Id: If02f1159c498be7ea965fd9c217410722f2dca1f
Diffstat (limited to 'android/Bootstrap')
-rw-r--r-- | android/Bootstrap/src/org/libreoffice/kit/LibreOfficeKit.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/android/Bootstrap/src/org/libreoffice/kit/LibreOfficeKit.java b/android/Bootstrap/src/org/libreoffice/kit/LibreOfficeKit.java index 431c384726d0..b2fb5e12053a 100644 --- a/android/Bootstrap/src/org/libreoffice/kit/LibreOfficeKit.java +++ b/android/Bootstrap/src/org/libreoffice/kit/LibreOfficeKit.java @@ -11,6 +11,7 @@ package org.libreoffice.kit; import android.app.Activity; import android.content.pm.ApplicationInfo; +import android.content.res.AssetManager; import android.util.Log; import java.io.File; @@ -24,6 +25,7 @@ import java.nio.ByteBuffer; public final class LibreOfficeKit { private static String LOGTAG = LibreOfficeKit.class.getSimpleName(); + private static AssetManager mgr; // private constructor because instantiating would be meaningless private LibreOfficeKit() { @@ -34,7 +36,7 @@ public final class LibreOfficeKit } // Trigger initialization on the JNI - LOKit side. - private static native boolean initializeNative(String dataDir, String cacheDir, String apkFile); + private static native boolean initializeNative(String dataDir, String cacheDir, String apkFile, AssetManager mgr); public static native ByteBuffer getLibreOfficeKitHandle(); @@ -55,6 +57,8 @@ public final class LibreOfficeKit return; } + mgr = activity.getResources().getAssets(); + ApplicationInfo applicationInfo = activity.getApplicationInfo(); String dataDir = applicationInfo.dataDir; Log.i(LOGTAG, String.format("Initializing LibreOfficeKit, dataDir=%s\n", dataDir)); @@ -83,7 +87,7 @@ public final class LibreOfficeKit // TMPDIR is used by osl_getTempDirURL() putenv("TMPDIR=" + cacheDir); - if (!initializeNative(dataDir, cacheDir, apkFile)) { + if (!initializeNative(dataDir, cacheDir, apkFile, mgr)) { Log.e(LOGTAG, "Initialize native failed!"); return; } |