目录
iuap mobile路径的使用方法
什么是路径?
无论是访问本地资源、远程资源都会使用到路径,路径标识了资源所在的位置信息。
iuap的路径
iuap的DSL支持多个不同平台,所以,iuap为不同平台的资源建立了统一的访问方式。当我们说某一个控件的属性支持iuap路径时,就表示,这个属性可以通过路径来访问对应的资源。
比如image控件的src属性,recorder的out属性,等等。
路径的分类
iuap URI一共支持4种类型的资源定位类别
- 应用资源。应用安装包内的资源目录;对应Android的asset目录,iOS的resource目录;
- 私有资源。应用安装的资源目录;对应Android的/data/data/xx.xx.xx/,iOS私有目录;
- 公共资源。公有的资源目录;对应Android的公共可访问目录,iOS无;
- 网络资源。http的URL链接
快速了解
资源类别 | 使用示例 | 权限 | 平台 |
---|---|---|---|
应用资源 | #{element.assetpath}/xxx.jpg | 只读 | iOS/Android |
私有资源 | xxx/xxx.jpg | 读/写 | iOS/Android |
公共资源 | /xxx/xxx.jpg | 读/写 | Android |
网络资源 | http://xxx/xxx.jpg | 只读 | iOS/Android |
1. 应用资源
应用安装包内的资源目录。这类资源在设计器就打包在了应用内部,供运行时使用。只能进行
读操作,不能写。
在访问时,使用#{element.assetpath}进行访问。
比如:#{element.assetpath}/xxx/xxx.jpg
2. 私有资源
应用安装的资源目录,可以读写。应用卸载后会被删除。
Android也可以通过清理应用数据文件进行删除。
在没有Root的机器上,其它应用没有访问的权限。
在访问时,可以使用相对目录的方式访问。
如:xxx/xxx/xxx.jpg
注意:最前面没有斜线
3. 公共资源
iOS没有公共资源的概念,所以这种访问只在Android应用中有效。
如果你设计的是一个跨平台的应用,要警慎使用这种资源,如果一定要使用,请在使用前判断平台版本,比如:
if(Platform==ANDORID) {
}
公共资源,可以读写,可以被任何应用访问,应用卸载后,仍然存在。
所以,如果我们正在使用一个公共资源,我们应该认真考虑定期清理的问题。
在访问时,使用绝对目录的方式
如:/xxx/xxx/xxx.jpg
如果是访问Android的SD卡目录,可以使用/sdcard/来表示正在访问SD卡
如:/sdcard/xxx/xxx/xxx.jpg
有部分Android手机存在扩展sdcard,如三星,可以使用
/extSdcard/来访问
具体需参考具体手机型号
4. 网络资源
网络资源只能读,不能写,只有部分支持网络资源的属性支持网络资源属性。
如image的src属性,具体某属性是否支持访问网络资源,需查询UAP API手册。
使用方法同URL一样,
如:http://xxx/xxx/xxx.jpg