最近在给f做一些工具app,学习了不少关于uniapp编写android应用的知识。
首先,App应用的创建的时候要选择项目类型为uniapp类型。最开始我选择的是h5+项目,这种项目就比较容易写成纯js的项目,利用一些html5plus能力,或者使用mui来编写手机app。
我调研了一下,uniapp和h5+(mui为代表)的差异和优缺点如下所示。

技术类型 优点 缺点
uniapp 可以使用unipp封装的组件和api,有海量的插件可以从插件市场中找到。兼容多端,也可以用html5plus的api能力。可以复用小程序项目的逻辑代码,对团队的技术积累有好处。 需要学习vue语法,可能性能没有mui的优化效果好。
H5+ 也可以跨端生成多种应用,但是不能使用uniapp的组件、插件以及api中涉及h5的能力。其中mui号称可以达到原生应用级别的性能和交互效果。 局限于原生js以及依赖库的编写方式。无法统一和小程序项目的技术栈和编程方式,无法服用代码。

我首先尝试了一下h5+的mui项目,发现写起来很原始,因为大部分能力都是mui的js库提供的,写法完全和uniapp项目不同,很多uniapp封装的组件和api都不能直接使用。为了长远考虑,如果以后还要生成ios的app,mui技术未必适合。
再加上之前的小程序端也是uniapp类型项目,有很多基础库和方法是可以借鉴的,所以最终选择使用uniapp类型的项目来开发f端的app。
不得不说uniapp来开发跨端的应用是非常方便的,同一套代码除了平台特性的代码不能直接在其他平台上用,大部分通用的能力和代码是可以复用的。
tab上的定义还是在pages.json里面的tabBar定义,图片资源的目录结构也可以参考之前的项目。
然后就是一些功能开发了,其中uuid的获取方式和小程序不通,原始app的获取uuid(设备的唯一标识)的api在html5plus上也有对应的api,获取方式如下所示。

const uuid = plus.device.uuid;

值得一提的是html5plus里面提供了非常多好用的html5新特性,包括蓝牙(Bluetooth)、AD(广告联盟模块)、设备麦克风(Audio)、二维码(BarCode)、设备的摄像头(Camera)、设备信息(Device)、系统相册(Gallery)等。上面获取uuid的方法就属于管理设备信息的API之一。国内有专门的HTML5产业联盟,相关API可以从这里跳转。
由于我是开发的andorid app,所以在调试的时候也会使用到android studio,关于调试的方法我会单独写一篇文章来讲述,这里不展开说。大部分时候我们都有2种选择,要么使用AVD(虚拟设备)来调试app,要么连接真实手机进行调试(假设你有android系统的手机)。
调试的过程会遇到一些坑(后面写专题单独讲),但是最终我们是可以开发出较为满意的app,通过hbuilder可以打包成需要的apk。
这种开发模式非常流畅,适合创业团队或者全栈技术人,一套代码生成多端,开发效率非常高。测试代码也可以复用之前的,uniapp项目的自动化测试都是类似的,对测试团队也是非常友好。
性能方面,由于是小范围使用,数据量不是很大,体验上和原生app差别不大。对于资源也能预加载,这方面我还没有深入了解,但是提供了相关api,不用太担心lazy load的问题。

多端开发之uniapp开发app相关推荐

  1. android studio开发工具介绍,Android应用开发之Android开发工具介绍、Android Studio配置...

    本文将带你了解Android应用开发之Android开发工具介绍.Android Studio配置,希望本文对大家学Android有所帮助. 2.1   Android Studio配置 2.1.1 ...

  2. uniapp开发APP 客服链接

    uniapp开发APP嵌套第三方(米多客)客服链接,遇到了无法返回的问题 米多客的客服也回复很及时,发了一种解决方法 详细描述问题 (记不清在哪看到一句话: 详细的描述出遇到的问题,问题就解决一大半了 ...

  3. uniapp开发App从开发到上架全过程(三)-上架

    当我们的APP开发完毕,最终交付的时候,必然要经历的一个环节,就是APP上架,国内APP上架一般为IOS端appstore上架,安卓端应用商店比较多,最常见的应用商店有华为应用商店.小米应用商店.OP ...

  4. uniapp开发app——nvue

    Nvue是一个基于weex改进的原生渲染引擎,它在某些方面要比vue更高性能,在app上使用更加流畅,但是缺点也很明显,没有足够的api能力,语法限制太大,所以nvue适用于特定场景(需要高性能的区域 ...

  5. Linux嵌入式系统开发之Led开发——应用篇(一)

    与Linux嵌入式系统开发之Led开发--驱动篇(一),对于的应用篇 看看咱们的开发板,有四个led灯,对吧,这次就是向办法用程序来点亮它,请看下边的代码: #include <stdlib.h ...

  6. uniapp开发app中配置高德地图定位流程

    在使用uniapp开发app过程中,如何使用高德地图进行定位 高德地图开放平台账号申请 进入高德地图开放平台,注册并登陆开发者账号,完成之后点击进入控制台主页 在应用管理中点击创建新应用 输入并选择你 ...

  7. uniapp开发APP之真机调试

    uniapp开发APP之登录授权,获取用户基础信息 一:华为手机实时调试APP代码基座流程 1.打开手机的开发者模式,允许USB调试,手机操作流程,进入设置-关于手机,长按版本号(开启开发模式),然后 ...

  8. uni-app 开发App 口令弹窗

    我们用uni-app开发APP 电商类总有口令弹窗的需求 首先我们写弹窗首先就要想到uni-popup 写弹窗非常方便 <uni-popup ref="popup" roun ...

  9. android显示通知图标大全,Android应用开发之android 桌面APP应用图标显示通知消息的数量显示与去除...

    本文将带你了解Android应用开发之android 桌面APP应用图标显示通知消息的数量显示与去除,希望本文对大家学Android有所帮助. android   桌面APP应用图标显示通知消息的数量 ...

最新文章

  1. SpringCloud Hystrix初体验
  2. cfg桩设备型号_试桩、试验桩、工程桩是一回事吗?
  3. 最优化作业讲解01:标准化线性规划(LP)
  4. Chip Factory HDU - 5536
  5. ubtunu打开firefox_Linux Ubuntu 终端命令行打开firefox报错
  6. 涡轮机叶片matlab强度分析论文,一种基于MATLAB及Pro_E的涡轮建模方法
  7. WLAN定位技术——(无线信号定位2)
  8. Android 视频播放器 (二):使用MediaPlayer播放视频
  9. pkcs1与pkcs8格式RSA私钥互相转换
  10. 活动目录父子域用户迁移之:TFSSharePoint问题汇总(一)
  11. 《Flash MX从入门到精通》内容简介
  12. Github中文汉化插件—英语渣渣的福利(转)
  13. 【绿色版软件】出现应用程序无法启动,并行配置不正确
  14. 微信小程序 | 借ChatGPT之手重构社交聊天小程序
  15. vi ~/.bashrc如何保存退出
  16. 一般java面试考什么_JAVA面试的时候一般考什么?
  17. Java:计算圆形和长方形的面积
  18. Python 打包的exe在Win7 不能运行的解决
  19. 【HCIE-RS 天梯路】QoS
  20. 诺基亚x6 云服务器,诺基亚X6使用一周后的真实体验,看完决定买不买?

热门文章

  1. 浏览器无法访问此网站该如何处理?
  2. java 写字板源代码_基于JAVA的模拟写字板的设计与实现(含录像)
  3. 【单片机毕业设计】【mcuclub-103】智能花盆 | 智能养殖箱 | 多功能花盆 | 多功能养殖箱【仿真设计】
  4. FFMPEG框架学习——(2)视频的提取和解码
  5. android usb uac,iBasso UAC
  6. 基于libusb库、uac协议,获取Audio声音数据
  7. 【组队学习】【35期】组队学习内容详情
  8. C语言 母牛生小牛问题 多组测试数据
  9. 高仿QQ源码 界面(3)
  10. 视频教程-隐马尔科夫算法:中文分词神器-深度学习