免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
ULua熱更新提高 <二> 發(fā)布到安卓真機(jī)開(kāi)始更新

說(shuō)實(shí)話我看了那么多熱更新的文章,感覺(jué)說(shuō)透的真的不多,這個(gè)東西出來(lái)都好幾年了,真的遇到問(wèn)題,還是得靠這自己去看代碼研究,上一篇已經(jīng)可以做出資源并且打包成游戲了,接下來(lái)就是更新了,我建議是自己先搞搞看,搞不出來(lái)再去看別人寫(xiě)的文章,會(huì)加深你的印象,那我們開(kāi)始研究吧。

建議一定要在例子的基礎(chǔ)上去測(cè)試更新,修改弄弄看,不要一上來(lái)就自己寫(xiě),很容易出問(wèn)題,一大堆問(wèn)題等著你,按照框架的更新修改測(cè)試一下就成功了。例外,我發(fā)現(xiàn)unity5.3打包成APK有問(wèn)題,會(huì)報(bào)錯(cuò),但是用5.0就沒(méi)事,不知道是不是我U3D安裝的有問(wèn)題。


先轉(zhuǎn)載一篇寫(xiě)更新流程的博客,很不錯(cuò)    http://www.xionggf.com/articles/graphic/u3d/ulua_simpleframework_res_download_flow.html


研究了一下,游戲更新是這樣的,以PC端為例子,讀取文件列表不同以后,會(huì)將最新的資源  拷貝一份到 C:\項(xiàng)目名稱的文件夾 中,拷貝一份到  緩存 中,好像PC端的更新有問(wèn)題,它一直讀取的都是一開(kāi)始的緩存,更新下來(lái)了以后只更新了C盤的文件夾,并沒(méi)有更新緩存,造成一直在讀取老的緩存,資源也是老的,而且它讀取是緩存和本身游戲的StreamingAssets包(游戲里沒(méi)有就去緩存找,都沒(méi)有就報(bào)錯(cuò)),但是更新只更新C盤的包。有待繼續(xù)研究。


讀取資源的方式是www.LoadFromCacheOrDownload(先去看緩存有沒(méi)有,沒(méi)有再下載)這個(gè)緩存地址找了我半天,按照網(wǎng)上說(shuō)的地址也沒(méi)找到,找了半天終于找到了, 我的電腦是WIN7 64位,它的緩存地址是    C:\Users\Administrator\AppData\LocalLow\Unity\WebPlayer\Cache\DefaultCompany_SimpleFramework


如果在編輯器里并且調(diào)試模式,會(huì)直接讀取工程里的文件。不是調(diào)試,會(huì)把文件拷貝一份到持久化硬盤里,因?yàn)樵诰庉嬈骼铮鋵?shí)讀取的還是工程里的。


一.使用IIS網(wǎng)站更新

測(cè)試我就不用服務(wù)器了(ULUA框架里自帶了Server服務(wù)器也可以做更新,具體自己找教程吧),我們要做的就是手機(jī)訪問(wèn)工作的電腦上的網(wǎng)站,因?yàn)橐郧白鲞^(guò)aspx.NET網(wǎng)站,使用的是IIS管理器,搭建就不說(shuō)了,不難。唯一需要注意就是 MIME類型,添加了下面這幾種格式才有下載權(quán)限,如果添加了還下載不下來(lái)就要去看網(wǎng)站的讀寫(xiě)權(quán)限,網(wǎng)站搭建好了以后把StreamingAssets文件夾拖到網(wǎng)站目錄下面。

添加:擴(kuò)展名 .assetbundle    類型application/octet-stream  (類型為字節(jié)流)

添加:擴(kuò)展名 .txt                   類型application/octet-stream

添加:擴(kuò)展名 .manifest          類型application/octet-stream

添加:擴(kuò)展名 .(空格)        類型application/octet-stream

添加:擴(kuò)展名 .lua                   類型application/octet-stream


二.使用官方自帶的服務(wù)端更新(二選一)

以前是下載的框架里邊有個(gè)Server文件夾,現(xiàn)在獨(dú)立出來(lái)了一個(gè)項(xiàng)目。下載地址:https://github.com/jarjin/ServerFramework

本來(lái)不打算用的,后來(lái)發(fā)現(xiàn)要測(cè)試通信還是要個(gè)服務(wù)端,我蠢了,還是用服務(wù)端來(lái)做更新吧。

1.客戶端修改GameManager.lua里的IP和端口  AppConst.SocketPort = 6688;   AppConst.SocketAddress = "192.168.1.188";

2.服務(wù)端修改HttpService.cs的HttpService,寫(xiě)入更新資源服務(wù)器地址和端口,重新生成。

3.修改SuperSocket.SocketService.exe.config 配置文件里的Socket地址和端口,serverTypeName="GameManagerService" ip="192.168.1.2" port="6677"

4然后管理員身份打開(kāi)Server\Server\bin\Debug\SuperSocket.SocketService.exe  ,輸入 r 啟動(dòng)服務(wù)器

5.把Server文件夾Assets同級(jí),把要更新的資源放到Server\Assets\StreamingAssets文件夾。



三.AppConst.cs代碼開(kāi)啟下載

1.在U3D里,AppConst.CS里修改 WebUrl = "http://192.168.1.188/StreamingAssets/"  (如果用服務(wù)端:"http://192.168.1.188:6688/";)         切記一定要有最后一個(gè)/

   修改DebugMode = false    保持ExampleMode = true(這個(gè)地方還有待研究,先不要改容易出問(wèn)題)

2.切換到安卓項(xiàng)目,打包安卓資源,工程設(shè)置:腳本定義符號(hào)Scripting Define Symbols----填入 ASYNC_MODE(非必須,看名字是異步模式,具體代碼還沒(méi)看)

代碼里使用 ,會(huì)根據(jù)你不同定義符號(hào)編譯不同的代碼塊,沒(méi)有填寫(xiě)編譯符號(hào),就不會(huì)編譯。  #預(yù)編譯指令,在編譯之前進(jìn)行

#if   ASYNC_MODE          //if定義了ASYNC_MODE 

(代碼塊)                          

#elif                                 //其它if

#else                               //其它

(代碼塊)    

#endif                              //結(jié)束if



三.手機(jī)訪問(wèn)電腦網(wǎng)站

1,首先手機(jī)不能使用127.0.0.1 訪問(wèn)電腦本地的網(wǎng)站,關(guān)閉防火墻,就算開(kāi)啟,要開(kāi)放響應(yīng)端口,網(wǎng)站是80   

2,得到電腦的局域網(wǎng)IP:Win+R  --- 打開(kāi)CMD  ---  ipconfig /all  --- 可以查看本機(jī)局域網(wǎng)IP地址 比如192.168.1.88

3,(不是必須)可以固定局域網(wǎng)IP,修改IPv4協(xié)議

      IP地址  192.168.1.188   子網(wǎng)掩碼  255.255.255.0  默認(rèn)網(wǎng)關(guān)192.168.1.1   首選DNS  192.168.1.1(路由器DNS)  備選DNS 114.114.114.114(國(guó)內(nèi)較快)8.8.8.8(谷歌,國(guó)外較快)

     


四.手機(jī)真機(jī)調(diào)試

1.可以導(dǎo)出到AndroidStudio,去調(diào)試分析

2.查看Debug信息,裝有AndroidSdk,里面有adb.exe,安卓的調(diào)試工具,直接是打不開(kāi)的。手機(jī)連接電腦 ---- CMD ----   adb logcat -s Unity

如果說(shuō)adb不是內(nèi)部或外部命令 也不是可運(yùn)行程序,要去Path里配置一下環(huán)境變量。

3.性能分析,在U3D里生成的時(shí)候選擇生成選項(xiàng):Autoconnect profiler,ADB調(diào)試方式,自動(dòng)連接分析器,開(kāi)啟U3D性能分析工具的功能,前期要打開(kāi)手機(jī)開(kāi)發(fā)者選項(xiàng)---USB調(diào)試。還可以WIFI調(diào)試,Active profiler里選擇手機(jī)(點(diǎn)擊了Build And Run以后會(huì)自動(dòng)打開(kāi)分析器)

發(fā)現(xiàn)錯(cuò)誤:Installation failed with the following output:pkg: /data/local/tmp/Package.apk  (手機(jī)上已經(jīng)安卓過(guò)一次該應(yīng)用了,手機(jī)上刪除就行)

發(fā)現(xiàn)錯(cuò)誤:Error building Player: UnityException: Unable to install APK! (手機(jī)黑屏,鎖屏,生成的時(shí)候要解鎖)


安卓解壓資源包的文件目錄在Android/data/com.xxx.xxxxx/files/xxxxx  里面。


五.Lua腳本加密

AppConst類  public const bool LuaEncode = true;                        //使用LUA編碼

工程外面的LuaEncoder文件夾應(yīng)該就加密的東西,具體還沒(méi)研究到這里。


研究有待繼續(xù),感覺(jué)還沒(méi)有研究透更新機(jī)制,我現(xiàn)在有點(diǎn)腦子暈,有的時(shí)候感覺(jué)框架細(xì)節(jié)還有問(wèn)題,不知道是我的問(wèn)題,還是框架問(wèn)題。


六.注意!切記!

工程設(shè)置里面的stripping level 剝離等級(jí),就默認(rèn)關(guān)閉,選擇其他會(huì)下載的時(shí)候?qū)懭氩坏绞謾C(jī)里,這個(gè)問(wèn)題改了整整2天,不知道哪里出問(wèn)題,就是下載不下來(lái),后來(lái)發(fā)現(xiàn)就是這個(gè)選項(xiàng)的問(wèn)題!

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開(kāi)APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
手機(jī)存儲(chǔ)別亂刪! 教你正確清理手機(jī)垃圾
手機(jī)越用越慢??jī)?nèi)存越來(lái)越少?教小白輕松解決問(wèn)題!
嚴(yán)重提醒!XP里面這些東西可以刪除
細(xì)說(shuō)Unity3D(一)動(dòng)態(tài)讀取外部文件
關(guān)于Unity中文件讀取
unity 加載資源
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服