UniRx网络请求操作
通常WWW和UnityWebRequest都要使用Coroutine。而UniRx以简练的风格提供了对网络请求的支持。
示例:
ObservableWWW.Get("http://sikiedu.com")
.Subscribe(_ =>
{
// todo some thing
})
.AddTo(this);
Siki:除了Get之外,还支持Post,还有GETWWW和PostWWW这种辅助封装,以及GetAndGetBytes和PostAndGetBytes。
ScheduledNoifiers:
Siki:ObservableWWW的API可以传入一个
ScheduledNotifier<T>
,用来监听下载进度。Subscribe之后传回的值则是下载进度。
var progressListener = new ScheduledNotifier<float>();
ObservableWWW.GetAndGetBytes(mRequestPackageData.DownloadUrl, null, progressListener)
.Subscribe(bytes =>
{
//...
});
progressListener.Subscribe(progress => { }));
其他:
Siki:除了常用的的Get和Post请求,也对AssetBundle的加载做了简单封装。提供了诸如ObservableWWW.LoadFromCacheOrDownload这样的API。
(END)