1. 程式人生 > >Android讀取打包到assets目錄下的檔案

Android讀取打包到assets目錄下的檔案

apk安裝之後會放在/data/app/**.apk目錄下,以apk形式存在,asset/res和被繫結在apk裡,並不會解壓到/data/data/YourApp目錄下去,所以我們無法直接獲取到assets的絕對路徑,因為它們根本就沒有。

例如訪問本地的一個index.html檔案

將index.html放到assets目錄下,然後通過WebView的loadUrl(file:///android_asset/index.html)訪問,這是沒有問題的,但是如果你想在/data/data/YourApp找到index.html,那是不可能的。你可以通過RE來檢視/data/data/YourApp目錄,看是否有index.html存在。答案當然是沒有了。

如果想訪問assets目錄下的檔案,只能通過AssetManager,它的原理也是找到/data/app/**.apk,然後解壓讀取資料。

目前nodejs在android平臺上使用第三方模組遇到這樣的問題。第三方模組也是和nodejs一起打包的,nodejs需要讀取第三方模組。目前先採用2>中提到的方案,即先解壓到sdcard中再讀取。

1> Android資源管理框架(Asset Manager) 

原文:http://blog.csdn.net/luoshengyang/article/details/8738877/

2> android中拷貝assets下的資原始檔到SD卡中(可以超過1M)

原文:http://www.cnblogs.com/wainiwann/p/3274386.html

相關推薦

Android Studio中讀取Assets目錄檔案

參考網址 首先,android studio 下的assets目錄檔案跟在eclipse下不一樣,所以有時候讀取assets目錄下的的檔案會無法讀取。 Android Studio中,這個assets目錄必須放在跟res同級目錄,也就是在main資料夾裡面,如下面2

Android開發之assets目錄資源使用總結

[] != 大致 pac 模式 uri bsp 文件夾 block 預前知識: Android資源文件分類: Android資源文件大致可以分為兩種: 第一種是res目錄下存放的可編譯的資源文件: 這種資源文件系統會在R

獲取assets目錄檔案的路徑

關於這個問題網上很多回答都是轉自下面的內容 第二種方法看程式碼就知道不靠譜,第一種方法感覺在後面就是不適用了。 下面是我自己做的路徑獲取程式碼: File image = getFileStreamPath("image.jpg"); File second

android studio 安裝assets目錄的apk包出現解析錯誤的問題

當你使用新版的android studio 直接run專案時,如果應用是需要安裝assets目錄下的apk包可能會出現以下問題: 這是因為新版的android studio中預設使用instant run,當直接run 部署到真機或者模擬器上時編譯專案可能會出現問題,導致

Android中把assets目錄所有圖片轉換成bitmap存入list集合

InputStream open(String fileName);//以順序讀取模式開啟檔案,預設模式為ACCESS_STREAMING InputStream open(String fileN

Android讀取打包assets目錄檔案

apk安裝之後會放在/data/app/**.apk目錄下,以apk形式存在,asset/res和被繫結在apk裡,並不會解壓到/data/data/YourApp目錄下去,所以我們無法直接獲取到as

Android開發 讀取assets目錄的txt檔案

/** * 讀取assets下的txt檔案,返回utf-8 String * @param context * @param fileName 不包括字尾 * @

Android讀取assets目錄所有檔案

package org.crazyit.image; import java.io.IOException; import java.io.InputStream; import android.app.Activity; import android.content.

Android jar包裡面有assets目錄檔案,APP的assets裡面也有檔案,如何讀呢?

jar 包中可以寫 assets資料夾, APP裡面同時也可以寫assets,但是隻要assets下面的檔案不同名就可以了,忒棒 !!! 如果assets目錄下有檔案的,

Android 操作安裝包中的“assets目錄檔案工具類

這是我在專案中常用到的一些工具,為了怕以後找不到故記錄於此。 /** * Created by LY on 2015/6/12. * 操作安裝包中的“assets”目錄下的檔案 */ public class AssetsUtils { /** * re

Android如何解壓assets目錄的壓縮包檔案

1.工具類  /** * Created by YuShuangPing on 2018/12/15. */ public class ZipUtils { public static final String TAG = "ZIP"; public ZipU

Android獲取assets目錄檔案和圖片

      在android studio中預設不會像eclipse一樣自動新建assets檔案,首先將android studio的檢視切換到project下,src/man下直接新建檔案命名為assets即可。       1、獲取圖片 Bitmap bitmap = n

Android讀取assets目錄的資源 (webview載入assets的html)

1。獲取資源的輸入流 資原始檔 sample.txt 位於 $PROJECT_HOME/assets/ 目錄下,可以在 Activity 中通過 Context.getAssets().open(“sample.txt”) 方法獲取輸入流。 注意:如果資原始檔是文字檔案

Android 解析assets目錄的json檔案

Context test_Context = null;         String test_package = packageName;             try             {                             test_Co

Android 的apk在覆蓋安裝的時如何重新讀取raw或assets目錄的資料庫

最近做的專案因為是要讀取assets目錄下的資料庫獲取資料,我就把assets目錄下的資料庫寫到/data/data/包名/databases/目錄下進行讀取,而且只是在使用者進行安裝應用啟動第一次時進行寫入,後面就不會再寫了.但是這樣出現一個問題,就是我的應用

Android讀取assets目錄的資源

1。獲取資源的輸入流 資原始檔 sample.txt 位於 $PROJECT_HOME/assets/ 目錄下,可以在 Activity 中通過 Context.getAssets().open(“sample.txt”) 方法獲取輸入流。 注意:如果資原始檔是文字檔案

讀取assets目錄的圖片檔案

1.layout <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" and

android:將assets目錄檔案(資料夾)放置到記憶體卡指定目錄

最近做一個OCR識別圖片文字的功能,閒暇之餘,提取專案中涉及的方法供大家參考. 這個方法是將assets下的指定檔案或資料夾,放置到sd的指定目錄下,程式碼中都有註釋. 當然我們也可以探討探討OCR.

資源—— 讀取assets目錄檔案詳細介紹

InputStream is = getResources().openRawResource(R.id.filename); 將assets下的檔案複製到SD卡中 /** * 從assets目錄中複製整個資料夾內容 * @param context Context 使用CopyFil

Android 拷貝assets目錄所有檔案及資料夾到指定路徑

專案中需要將一些使用NDK編譯的so庫檔案放到assets目錄打包。因為所有so檔案是按照目錄存放和查詢載入的,libs路徑打包有問題,就考慮放到assets下,啟動的時候進行拷貝。從網路上找到一個拷貝的類,做了些小的修改,以滿足拷貝所有檔案及資料夾的需求。 /*****