1. 程式人生 > >Unity匯出android關於路徑問題總結

Unity匯出android關於路徑問題總結

(1)unity匯出andriod時報錯:Moving file failed,如下圖,

解決:在匯出的路徑中已存在3456.apk了,且這個apk阻止修改!重新命名匯出的apk即可。

(2)在Android平臺下,無法載入打包的檔案(.assetbundle 、.unity3d、...),檢視打包程式碼中是否寫入了打包平臺資訊:

打包AssentBundle,最核心的方法:

BuildPipeline.BuildAssetBundle (obj, null, targetPath, BuildAssetBundleOptions.CollectDependencies)

不過這是預設的電腦上打包的資源只可以電腦上用

安卓打包需要新增引數:

BuildPipeline.BuildAssetBundle(Selection.activeObject, selection, path, BuildAssetBundleOptions.CollectDependencies | BuildAssetBundleOptions.CompleteAssets,BuildTarget.Android);

Iphone打包也需要新增引數:
 BuildPipeline.BuildAssetBundle(Selection.activeObject, selection, path, BuildAssetBundleOptions.CollectDependencies | BuildAssetBundleOptions.CompleteAssets,BuildTarget.iPhone

);

(3)Android平臺下儲存或者載入Assetbundle檔案的路徑

path="file:///"+Application.persistentDataPath+"/res_name";(Android/com.productname.company/files/,測試結果,該路徑可讀寫資料)

path="jar:file://"+Application.datapath+"!/assets/***/res_name";(/mnt/sdcard/com.productname.company/pkg.apk!/assest/,測試結果,該路徑僅讀資料,並且只讀檔案必須放在資料夾StreamingAssets下,可在此目錄下新建資料夾***)

用以下步驟進行在Android機子上使用AssetBundle:

參考地址:http://www.narkii.com/club/forum.php?mod=viewthread&tid=299447&extra=page%3D{prevpage}&page=1
重點有2點:
Use the option "BuildTarget.Android".
Describe the path with triple slash "file:///"
以下是步驟:

Delete directories "Per Texture Materials", "assetbundles", and so on.  把已經匯出過的包刪掉
Use the option "BuildTarget.Android" to all "BuildPipeline.BuildAssetBundle".   要把BuildTarget為Android平臺!!!
Run these on Editor. Character Generator/Generate Materials Character Generator/Create Assetbundles Character Generator/Update Character Element Database  
Copy Assetbundles database to Android device which like "/mnt/sdcard/assetbundles/"  把這些包放到Android的指定目錄下
Modify AssetbundleBaseURL. (the point was "file:///") 修改獲取AssetbundleBaseURL基礎路徑的地址

程式碼:
public static string AssetbundleBaseURL
{
    get
    {
        if (Application.platform == RuntimePlatform.WindowsWebPlayer || Application.platform == RuntimePlatform.OSXWebPlayer)
        {
            return Application.dataPath + "/assetbundles/";
        }
        else if (Application.platform == RuntimePlatform.Android)
        {
            return "file:///mnt/sdcard/assetbundles/";(這個路徑本人測試了但是沒成功)
        }
        else
        {
            return "file://" + Application.dataPath + "/../assetbundles/";
        }
    }
}

相關推薦

Unity匯出android關於路徑問題總結

(1)unity匯出andriod時報錯:Moving file failed,如下圖, 解決:在匯出的路徑中已存在3456.apk了,且這個apk阻止修改!重新命名匯出的apk即可。 (2)在Android平臺下,無法載入打包的檔案(.assetbundle 、.uni

Unity StreamingAssets Android路徑問題

    1、首先在unity工程中建立一個“StreamingAssets”的資料夾,然後把相關的資源放到這個檔案下,如果檔案過多或者型別不一,也 可以在這個檔案下再新建一個子資料夾,這裡我們命名為“SEM”,然後把資源放進這個檔案裡,在這裡,我們放一個音訊,如圖:

Unity Android 路徑下的斜杆和反斜槓

當在Unity Editor 中使用斜杆和反斜杆來表示路徑時,這兩者似乎沒有什麼區別. 但當使用C#的IO類如Path.GetFileNameWithoutExtension()在android上會使反斜杆不識別。 舉個例子,"Assets/StreamingAssets/Meterial\

【《Unity Shader入門精要》 提煉總結】(十五)第十五章·光照系統進階教程&Unity的渲染路徑介紹&前向渲染路徑&頂點照明渲染路徑&延遲渲染路徑

      本文由@唐三十胖子出品,轉載請註明出處。  文章連結:https://blog.csdn.net/iceSony/article/details/84887592    

UnityAndroid的互動,使用Android Studio匯出Unity工程通用的Android外掛包

網上已經有很多關於Unity與Android之間的互動,教程基本都一樣,但是裡面有個都強調的重點是建立安卓工程時包名要和unity的bundle id要一致,這樣我就比較疑惑,如果一些

Unity匯出Android專案按鈕無法點選問題

Unity匯出的Android專案,有時會出現按鈕不能點選的問題,可以在AndroidManifest.xml的主Activity入口處新增如下meta-data試試。 <meta-data android:name="unityp

unity各個平臺的路徑總結

  此屬性返回一個持久化資料儲存目錄的路徑,可以在此路徑下儲存一些持久化的資料檔案。這個路徑可讀、可寫,但是隻能在程式執行時才能讀寫操作,不能提前將資料放入這個路徑。在IOS上是應用程式的沙盒,可以被iCloud自動備份,可以通過同步推送一類的助手直接取出檔案;在Android上的位置是根據Project

Unity 匯出Android Studio 打包流程

由於專案接入了第三方的sdk,導致dex總數超過64k,所以只能是選擇使用Multidex方式打包,關於Multidex是什麼可以看這裡瞭解一下MultiDex介紹,如果在unity當中出現類似下面圖中的錯誤,可以嘗試使用這種方法。unity錯誤日誌提醒很明顯了步驟一:在Un

UnityAndroid】02-在Unity匯出Android工程中接入Google AdMob廣告

我在上一篇文章 【Unity與Android】01-Unity與Android互動通訊的簡易實現) 中介紹了Unity與Android通訊的基本方法。 這一篇開始進入應用階段,這次要介紹的是如何在Android工程中接入Google的AdMob。   關於AdMob A

路徑總結

發送 user 發送請求 blog gin span xxx ack div web.xml文件中的路徑在<servlet-mapping></servlet-mapping>標簽中<url-pattern></url-patter

unityandroid交互

andro android版本 代碼 http 分享 cnblogs 希望 java blog 使用eclipse新建一個Android應用工程,在新建的過程中,使得這個工程的包名和Unity工程的包名一致,我選的android版本為4.x。unity 的版本是5.4.1

Unity 的一些優化總結 (難度3 推薦4)

rdo serial 分配內存 down 物理系統 頂點 最大 nbsp ade 原文地址: http://www.jianshu.com/p/3acee1101fe4 從別的地方看到一些資源使用方面的文章,從中抽取一些細節在這裏總結一下: Draw Call數量、Tria

UnityAndroid交互-Unity接入高德地圖實現定位以及搜索周邊的功能(使用Android Studio)詳細操作

nac mcc 以及 分享 pack create lis red 效果 剛進公司給安排的任務就是Unity接入高德地圖,算是踩了不少坑總算做出來了,抽點時間寫個博客記錄一下 廢話不多說 先上效果圖 獲取定位並根據手機朝向顯示周邊信息 使用的Unity

UnityAndroid的問題

jdk android unity r.java appcompat 先說下自己的開發環境Win7 x64Unity5.2.2Android Studio 2.3.2(以下簡稱AS)JDK1.7再說下創建項目在AS中創建一個新項目用empty activity將Unity中的classes

Android學習總結——輸入法將BottomNavigationBar(底部導航欄)頂上去的問題

andro devel google tps 底部導航 style log cti googl 在應用清單中給當前<Activity>設置: android:windowSoftInputMode="adjustPan" 關於android:windo

Android技術總結13

and -1 bsp alt png .com andro logs images Android技術總結13

Unityandroid 交互 記錄

技術 ble 記錄 com 問題 默認 idm 修改 文件 參考文章 http://www.jianshu.com/p/c06063a403c6 趟坑如下 icon 沖突問題: 設置不了unity icon,顯示的是默認的 android 小人 解決方法: 在 Andr

Unity讀取Android SDcard文件

tro 如果 studio length == man 兩種 設置 長度 一、添加權限 權限添加 :Player settings -- Other settings -- write permission的設置 Sdcard。這個是在Unity編輯器裏打包的情況。 如

UnityAndroid版)和Android原生APP簡單實現版本更新

directory 代碼 server 頁面 提示框 自動安裝 obj nis 查看 版本檢測接口說明:(1)請求post,無參數(2)調用地址:http://www.baidu.com/rs/ver/info(3)返回結果:{ "verCode": "2",

Android面試收集錄16 Android動畫總結

ont 定義 其中 自定義動畫 替代 通過 1.0 日誌 action 一、Android 動畫分類 總的來說,Android動畫可以分為兩類,最初的傳統動畫和Android3.0 之後出現的屬性動畫; 傳統動畫又包括 幀動畫(Frame Animation)和補