1. 程式人生 > >android studio開發(android res和asset等特殊資料夾 )

android studio開發(android res和asset等特殊資料夾 )

*res/raw和assets的相同點:

1.兩者目錄下的檔案在打包後會原封不動的儲存在apk包中,不會被編譯成二進位制。

*res/raw和assets的不同點:

1.res/raw中的檔案會被對映到R.Java檔案中,訪問的時候直接使用資源ID即R.id.filename;assets資料夾下的檔案不會被對映到R.java中,訪問的時候需要AssetManager類。
2.res/raw不可以有目錄結構,而assets則可以有目錄結構,也就是assets目錄下可以再建立資料夾

*讀取檔案資源:

1.讀取res/raw下的檔案資源,通過以下方式獲取輸入流來進行寫操作

InputStream is = getResources().openRawResource(R.id.filename); 

2.讀取assets下的檔案資源,通過以下方式獲取輸入流來進行寫操作

AssetManager am =null; 
am = getAssets(); 
InputStream is = am.open("filename"); 

assets資料夾裡面的檔案都是保持原始的檔案格式,需要用AssetManager以位元組流的形式讀取檔案。
1. 先在Activity裡面呼叫getAssets()來獲取AssetManager引用。
2. 再用AssetManager的open(String fileName, int accessMode)方法則指定讀取的檔案以及訪問模式就能得到輸入流InputStream。
3. 然後就是用已經open file 的inputStream讀取檔案,讀取完成後記得inputStream.close()。
4.呼叫AssetManager.close()關閉AssetManager。

附帶

res資料夾裡面的多個資料夾的各自介紹(來自網上的Android開發指南中文版內容):

目錄Directory

資源型別Resource Types

res/anim/

XML檔案,它們被編譯進逐幀動畫(frame by frame animation)或補間動畫(tweened animation)物件

res/drawable/

.png、.9.png、.jpg檔案,它們被編譯進以下的Drawable資源子型別中:

要獲得這種型別的一個資源,可以使用Resource.getDrawable(id)

點陣圖檔案

9-patches(可變尺寸的點陣圖)

為了獲取資源型別,使用mContext.getResources().getDrawable(R.drawable.imageId)

注意:放在這裡的影象資源可能會被aapt工具自動地進行無失真壓縮優化。比如,一個真彩色但並不需要256色的PNG可能會被轉換為一個帶調色盤的8位PNG。這使得同等質量的圖片佔用更少的資源。所以我們得意識到這些放在該目錄下的二進位制影象在生成時可能會發生變化。如果你想讀取一個影象位流並轉換成一個位圖(bitmap),請把影象檔案放在res/raw/目錄下,這樣可以避免被自動優化。

res/layout/

被編譯為屏幕布局(或螢幕的一部分)的XML檔案。參見佈局宣告(Declaring Layout)

res/values/

可以被編譯成很多種型別的資源的XML檔案。

注意: 不像其他的res/資料夾,它可以儲存任意數量的檔案,這些檔案儲存了要建立資源的描述,而不是資源本身。XML元素型別控制這些資源應該放在R類的什麼地方。

儘管這個資料夾裡的檔案可以任意命名,不過下面使一些比較典型的檔案(檔案命名的慣例是將元素型別包含在該名稱之中):

array.xml 定義陣列

colors.xml 定義color drawable和顏色的字串值(color string values)。使用Resource.getDrawable()和Resources.getColor()分別獲得這些資源。

dimens.xml定義尺寸值(dimension value)。使用Resources.getDimension()獲得這些資源。

strings.xml定義字串(string)值。使用Resources.getString()或者Resources.getText()獲取這些資源。getText()會保留在UI字串上應用的豐富的文字樣式。

styles.xml 定義樣式(style)物件。

res/xml/

任意的XML檔案,在執行時可以通過呼叫Resources.getXML()讀取。

res/raw/

直接複製到裝置中的任意檔案。它們無需編譯,新增到你的應用程式編譯產生的壓縮檔案中。要使用這些資源,可以呼叫Resources.openRawResource(),引數是資源的ID,即R.raw.somefilename。

相關推薦

android studio開發(android resasset特殊資料 )

*res/raw和assets的相同點: 1.兩者目錄下的檔案在打包後會原封不動的儲存在apk包中,不會被編譯成二進位制。 *res/raw和assets的不同點: 1.res/raw中的檔案會被對映到R.Java檔案中,訪問的時候直接使用資源ID即R

如何在Android Studio中建立jniLibasset資料

1.建立asset資料夾 如圖進行操作 2.建立jniLib資料夾 —開啟app下面的gradle檔案(不是project的gradle) —在gradle檔案的Android標籤裡面新增  sourceSets.main.jniLibs.srcDirs

Android studio如何恢復誤刪的檔案或者資料

當你一不小心 或者腦抽 刪掉(delete)了一個檔案 或者更腦抽的delete你的module之後  你咋辦 這時候你應該淡定的百度一下  哈哈哈  開個玩笑 你在專案的最上層 project目錄點選右鍵  選項裡面有一個Local History 選擇 show

Android Studio的DDMS中不能檢視data資料

當建立好資料庫後,想檢視一下資料庫是否生成成功,結果發現DDMS中不能檢視data資料夾, 如圖,雙擊無法展開/data/目錄。上面顯示rwxrwx–x。 發現/data的檔案許可權是drwxrwx–x這是linux的檔案許可權 第一個代表檔案型別d是di

C#獲取桌面特殊資料的路徑

C#獲取桌面路徑 不同的作業系統,桌面的路徑不盡相同,而且隨著使用者安裝位置的不同也不同。C#可以從Windows登錄檔讀取得到使用者的特殊資料夾(桌面、收藏夾等等)的位置。 程式碼如下: 法一: string desktop=Environment.GetFolderP

Android 簡介搭建Android Studio開發環境

Android簡介 Android(['ændrɔid])是一個以Linux為基礎的半開源作業系統,主要用於移動裝置,由Google和開放手持裝置聯盟開發與領導。 Android 系統最初由安迪·魯賓(Andy Rubin)製作,最初主要支援手機。2005年8月17日被Google收購。20

分別用eclipseAndroid Studio搭建Android開發環境

暑假和小夥伴們有個Android專案,今天搭建了下開發環境。我電腦系統是win7,最開始是用Android SDK、ADT外掛和eclipse進行搭建;搭建完成後再用Android Studio搭建,安裝完Android Studio後電腦明顯變卡,記憶體8G的

Android Studio開發Android Studio如何獲取versionnameversioncode

在eclipse中我們很清楚可以用下面的程式碼獲取到versionname和versionname //eclipse獲取versioncode和versioncode public void getEclipseVersionInfo(){ int versio

Android Studio開發基礎之使用XMLJava程式碼混合控制UI介面

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http:/

Android開發基礎 -- 最強 Android Studio 使用小技巧快捷鍵

寫在前面 本文翻譯自 Android Studio Tips by Philippe Breault,一共收集了62個 Android Studio 使用小技巧和快捷鍵。 根據這些小技巧的使用場景,本文將這62個小技巧分為常用技巧(1 – 28)、編碼技巧(29 – 49)和除錯技巧(

Android Studio開發實戰 從零基礎到App上線》資源下載內容勘誤

資源下載 內容說明 一、關於Android Studio的版本 本書採用的Android Studio版本為當時最新的2.2.3,然後2017年3月份谷歌又推出了2.3版本,與2.2.3版本相比,2.3版在安裝和使用上主要有兩個差別: 1、Android Studio

最強 Android Studio 使用小技巧快捷鍵

面板 panel 讓其 駝峰 展示 tab鍵 所在 最有 初始 常用技巧 1. 書簽(Bookmarks) 描述:這是一個很有用的功能,讓你可以在某處做個標記(書簽),方便後面再跳轉到此處。 調用:Menu → Navigate → Bookmarks 快捷鍵: 添

Android Studio 開發利器【經常使用插件】

媽媽 ctrl+alt 快捷鍵 發現 fill sta andro fonts wid 1.ADB Idea ADB操作快捷菜單。高速清除數據,重新啟動應用,卸載應用等 快捷鍵: Windows: Ctrl+Alt+Shift+A

在Ubuntu17.04上搭建Android Studio開發環境

term ora jdk1.8 png ava upd com all img 在實驗課上都是在Ubuntu環境下,雖然之前都是在windows系統裏寫android程序,但是我還是準備在Ubuntu下配置一個Android Studio環境。 通過百度,我先看到一個最簡單

android studio配置android開發環境

form tps android 禁用 圖片 ron dea ren dex 1、下載安裝android-studio-bundle 地址:https://developer.android.com/sdk/index.html 註意:指定andro

安裝Android Studio開發環境

1-1 path pan style color img 組件 evel 3.3 下載安裝包 中文社區官網 http://android-studio.org/ 目前最新的是2.3.3版本 安裝Android Studio 雙擊安裝 等待安裝包自動解壓

android studio 開發中啟動android項目報錯sdk版本不一致解決方案

技術分享 發現 依賴 adl 目的 clas studio ima 需要 安卓項目開發中新建項目後再run‘的時候發現報錯com.android.support:appcompat-v7依賴報錯 查看下build.gredle所配置的參數: 打開項目的bui

Android Studio開發-高效插件強烈推薦

bus 工作 install mis enc new ring 介紹 rem Android Studio開發-高效插件強烈推薦 現在Android的開發者基本上都使用Android Studio進行開發(如果你還在使用eclipse那也行,畢竟你樂意怎麽樣都行)

Android Studio安裝部署系列】二、Android Studio開發環境搭建

alt nand inf ima str php span 開發環境搭建 index.php 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 概述 Android Studio開發環境安裝步驟 下載Android Studio 下載地址: http://ww

Android Studio開發獲取本地時間

import 自己 public ack info 聊天記錄 datetime AS IV 實現本地聊天記錄功能,用到獲取本地時間的函數,感覺比較實用,分享給大家! 1、在相應moudle的java文件夾下建立自己的util文件夾如·: 2、建立DateUtil類 pa