1. UniApp介绍
UniApp是由DCloud公司推出的基于Vue.js开发的一款跨平台、一次开发多端发布的解决方案。也就是说,开发人员只需编写一份代码,就可以发布到H5、iOS、Android、小程序等多个平台中,实现较好的跨平台体验。UniApp为开发人员提供了丰富的组件和API,使得开发效率非常高。下面,我们来详细了解一下UniApp开发.
2. UniApp可以做APP吗?
我们回到文章标题的问题:UniApp可以做APP吗?答案是肯定的。UniApp可以开发出与原生APP相似或者接近原生APP的体验,且可以实现一份代码多端发布的效果。下面通过下面两个方面来证明UniApp是可以做APP的。
2.1 常用原生功能API
UniApp针对不同平台提供了一些常用的原生功能API,比如拍照、选择图片、录音、地理位置等,这些API在开发中非常常用,它们被封装成了uni-app API,统一调用,开发者可以基于uni-app API进行快速开发,让开发者尽可能地少接触底层API。
下面以选择图片为例子,介绍uni-app中的uni.chooseImage()API,从而证明uni-app可以做APP:
uni.chooseImage({
count: 1, //一次选择图片的数量
sizeType: ['compressed'], //所选的图片的尺寸
sourceType: ['album', 'camera'], //选择图片的来源类型
success: function (res) {
console.log(res.tempFilePaths) //返回图片的本地文件路径列表
}
});
通过调用uni.chooseImage()API,我们可以实现选择图片的功能,当我们在应用中选择图片时,弹出的选择窗口样式是根据对应平台自适应的,与原生App反应差不多。
2.2 APP商店应用下载
相信大家都知道,如果我们开发的APP想要被用户所使用,那么我们一定需要将其上传到应用商店进行分发,让大家进行下载。在UniApp中,如何实现APP的商店发布呢?只需要一份代码就能搞定吗?
众所周知,Android和iOS的应用发布是需要特定的证书的。在UniApp中,我们可以通过利用DCloud提供的云打包服务来实现App的签名与打包,将生产好的App文件发布到对应的应用商店中,实现App的分发。首先,在DCloud官网注册一个账号,上传打包好的TF文件,选择打包平台,打包类型,证书信息等,并进行打包工程,最后选择发布到对应的商店即可。
3. UniApp的优缺点
3.1 优点
一次编写,多端发布,大大减少了开发人员的工作量,提高了开发效率;
支持多个原生API,可以实现与原生App相似的效果;
开发新手易上手,借助Vue.js的高可用性,可以快速开发有效的应用程序。
3.2 缺点
因为需要支持多个平台,所以不可避免地需要牺牲一些性能方面的东西;
不支持使用类似react-native在原生App中嵌入UniApp模块;
可能存在一些平台特定的约束问题。
4. 结论
经过文章中的分析,我们可以得出结论:UniApp是可以做APP的。UniApp的一次编写,多平台部署的特性极大地提高了开发人员的工作效率,且在常用的原生API上也提供了很好的支持。此外,我们也看到了UniApp存在的一些缺点,但是在实际开发中,UniApp所提供的特性依然非常具有用意义,可以在很多场景中得到有效的应用。