微信小程序制作
当前位置:网站首页 > APP开发制作 > 微信小程序和app具体有那些区别呢? 返回列表

微信小程序和app具体有那些区别呢?

作者:admin 时间:2018-12-14 浏览量:1275
由于小程序本身的特殊性,导致 UI 设计师不能够如同西安App开发 一般自如。为了后续 UI 设计师和小程序前端开发能减少沟通,返工成本,将在这里和大家聊聊小程序和 App 设计的差异,以及差异具体的表现。本文仅为个人工作学习心得,可能概述的较片面,有错误不妥之处欢迎指出。
为什么有差异?2.差异在哪里?具体表现
为什么有差异——缺乏自主性
1)功能支持
微信小程序开发我们都知道是基于微信的应用程序,开发必须依靠微信给的接口(微信给啥就是啥),能实现的功能被大大的限制了。而且小程序上线也就2年的时候,还有一些功能不完善。App 依靠于手机系统,可以实现复杂且多的功能,App 开发已经有近10年的积累,各类控件比较完善,换句话说就是开发者能力越大,展示效果越丰富。
2)内存体积
小程序代码提交不能超过规定大小2M,这部分程度上限制了开发的可能性。App 就不同了,没有这部分的限制,我们更新软件的时候经常看到几十兆,几百兆,甚至游戏类的几个G的下载体积。
3)体验及流畅
小程序的体验略逊于 App , 小程序使用时没有那么稳定,容易出现错误闪退,特别是在一些功能复杂的应用中,虽然说小程序已经优化了很多,有时仍会出现卡顿感。
2.差异在哪里?具体表现
1)顶部导航栏
App:可以保留导航栏,也可以去掉,可拓展性强,灵活性高。小程序:导航栏右侧有个无法去除和编辑的胶囊(titlebar),设计时也不能在导航上增加其他功能。所以在 App  转小程序时,导航栏的功能要换位置或者在放在导航栏下。实现效果也略欠缺一些,例如微信提供原生和自定义的两种导航栏:
(一)原生的导航栏支持更改颜色,但字体颜色仅支持黑/白两种;
(二)虽然自定义的导航栏可以去除原生导航栏,支持图片通到导航栏上,但是所有页面都需要重新调整(原先导航栏的高度没有了,界面元素会跟着上移),而小程序不支持单个页面修改。这是目前最麻烦的地方,量级小的应用还可以,量级大的导致工作量大大增加。
同时,自定义导航容易带来标题无法对齐、页面机型不同安全区域不同、全局刷新时页面会被整个下拉等等问题。建议页面多、复杂的情况,尽量减少使用自定义导航,也可以使用像马蜂窝一样,导航栏背景和图片背景衔接,效果也不错。
2)标签栏
App:可支持最少2个,最多5个的tab切换,图标大小以及底部标签栏高度可自定义。小程序:也可支持最少2个,最多5个的tab切换,使用原生控件时,要遵从 icon 尺寸81*81px。使用自定义标签栏时,可支持加入交互效果,例如提示数量气泡等,但是体验相比原生差一点,如果标签页是首次进入的页面,那么标签栏切换会造成跳动,需要开发做规避。
建议不带有交互的情况,尽量使用原生控件,就像站酷小程序 一样。
3)拖动排序
App:流畅、体验佳,例如发朋友圈时拖动照片排序。小程序:除非必要,否则不建议使用拖动排序。图片和列表拖动在 Android机型上体验不够,会有卡顿的情况。
建议使用上下按钮替换上下拖动,或者图片排序使用标记的方式来进行排序。
4)文本省略
App:可实现日常所需的所有文字、段落效果。小程序:文本限制行数,加省略号,并且增加全文展开方案实现有问题。无法预估到行尾位置省略。建议通过换行增加全文展开按钮,或者控制字数,文本末尾增加全文展开。
5)原生组件
App:可以自定义组件库,对开发设计限制低。小程序:部分组件是由微信创建的原生组件,有系统相机、输入框、地图、文本输入...等等,原生控件使用有一定的限制,不能在滚动、轮播、选择器、拖动区域中使用,层级最高无法被覆盖,可供修改的参数由微信提供。建议在设计时以原生控件为基础修改,不要自造控件。同时注意使用场景,以免无法实现。
6)动画实现
App:动画流畅、无卡顿,想要的基本都能实现。小程序:动画能力低于 H5 和 App ,动画对性能消耗大,尤其是在 Android 机型上,卡顿有稍显明显。当加载代码包时,当微信认为这个小程序占用过多的内存,会把此小程序强行退出,以保证微信的正常使用。建议动画精简,尽量做减法设计。
由于小程序本身的开发特殊性,在和 App 设计的会有一些的不同之处,例如:
1.页面多、复杂的情况,尽量减少使用自定义导航。
2.不带有交互的情况,尽量使用原生控件。
3.使用上下按钮替换上下拖动,或者图片排序使用标记的方式来进行排序。
4.通过换行增加全文展开按钮,或者控制字数,文本末尾增加全文展开。
5.在设计时以原生控件为基础修改,不要自造控件。同时注意使用场景,以免无法实现。
6.动画精简,尽量做减法设计。
联系方式:18066528545   029-89298792

阅读过此文章的读者,还阅读过下面的文章

  • 小程序与原生APP那个好?下面我们就来一起了解一下小程序与原生APP那个好。以下是所整理的小程序与原生App的内容,希望对你有所帮助。

    小程序的优点:

    基于微信平台开发,享受微信自带的流量,这个优点最大
    无需安装,只要打开微信就能用,不占手机内存,体验好
    开发周期段,一般最多一个月就可以上线完成
    开发所需的资金少,所需资金是开发原生APP的一半不到
    小程序名称是唯一的,在微信的搜索里权重很高
    容易上手,只要之前有HTML+CSS+JS基础知识,写小程序基本没有大问题
    基本不需要考虑兼容性问题,只要微信可以正常运行的机器,就可以运行小程序
    发布,审核高效,基本上午发布审核,下午就审核通过,升级简单,支持灰度发布
    开发文档完善,社区活跃
    支持插件式开发,一些基本功能可以开发成插件,供多个小程序使用
    小程序的缺点:
    局限性很强(比如页面大小不能超过1M,不能打开超过5个层级的页面,样式单一,小程序的部分组件已经是成型的- 了,样式不能修改,比如幻灯片,导航)只能依赖于微信依托与微信,无法开发后台管理功能
    不利于推广,推广面窄,不能分享朋友圈,只能分享给朋友,附近小程序推广,其中附加小程序也收到微信限制
    后台调试麻烦,因为API接口必须https请求,且公网地址,也就是说后台代码必须发布到远程服务器上;当然我们可以修改host进行dns映射把远程服务器转到本地,或者开启tomcat远程调试;不管怎么说终归调试比较麻烦
    前台测试有诸多坑,最头疼莫过于模拟器与真机显示不一致
    js引用只能使用绝对路径,不能操作DOM
    原生App优点:
    原生的相应速度快
    对于有无网络操作时,譬如离线操作基本选用原生开发
    需要调用系统硬件的功能(摄像头,拨号,短信蓝牙…)
    在无网络或者弱网情况下体验好
    原生App缺点:
    开发周期长,开发成本高,需要下载
  • 小程序和Vue写法的区别?下面我们就来一起了解一下小程序和Vue写法的区别。以下是我所整理的小程序和Vue写法的区别,希望对你有所帮助。

    遍历的时候:

    • 小程序wx:for=“list”,
    • 而Vue是v-for=“item in list”

    调用data模型(赋值)的时候:

    • 小程序:this.data.item // 调用,

    • 小程序:this.setDate({item:1})//赋值

    • Vue:this.item //调用,

    • Vue:this.item=1 //赋值

  • 小程序调用后台接口遇到那些问题?下面我们就来一起了解一下小程序调用后台接口遇到那些问题。以下是所整理的小程序调用后台接口遇到的问题,希望对你有所帮助。

    数据的大小限制,超过范围会直接导致整个小程序崩溃,除非重启小程序

    小程序不可以直接渲染文章内容这类型的html文本,显示需要借助插件
    注:插件渲染会导致页面加载变慢,建议在后台对文章内容的html进行过滤,后台直接处理批量替换p标签div标签为view标签,然后其他的标签让插件来做
  • 分析微信小程序的优劣势?下面我们就来一起简单的了解一下微信小程序的优劣势。下面是所整理的微信小程序的优劣势,希望对你有所帮助。

    优势:

    容易上手,基础组件库比较全,基本不需要考虑兼容问题
    开发文档比较完善,开发社区比较活跃,支持插件式开发
    良好的用户体验,无需下载,通过搜索和扫一扫就可以打开,打开速度快,安卓上可以添加到桌面,与原生APP差不多
    开发成本比APP要低
    为用户提供良好的保障(小程序发布,严格是审查流程)

    劣势:
    限制较多,页面大小不能超过1M,不能打开超过5个层级的页面
    样式单一,部分组件已经是成型的,样式不可修改,例如:幻灯片,导航
    推广面窄,不能分享朋友圈,只能通过分享给朋友,附加小程序推广
    依托与微信,无法开发后台管理功能
    后台调试麻烦,因为api接口必须https请求且公网地址
    真机测试,个别安卓和苹果表现迥异,例如安卓的定位功能加载很慢

  • 简单描述下微信小程序的 相关文件类型。下面我们就来一起了解一下微信小程序的 相关文件类型。以下是所整理的微信小程序的 相关文件类型,希望对你有所帮助。

    wxml 模板文件,是框架设计的一套标签预言,结合基础组件,事件系统,可以构建出页面的结构

    wxss 样式文件,是一套样式语言,用于描述WXML的组件样式
    js脚本逻辑文件。逻辑处理网络请求
    json配置文件,小程序设置,如页面注册,页面标题及tabBar
    app.json 整个小程序的全局配置,包括:
    pages:\[所有页面路径]
    网络设置(网络超时事件)
    页面表现(页面注册)
    window:(背景色,导航样式,默认标题)
    底部tab等
    app.js 监听并处理小程序的生命周期函数,声明全局变量等
    app.wxss 全局配置的样式文件

  • 请谈谈原生开发小程序,wepy,mpvue的对比?下面我们就来一起了解一下原生开发小程序,wepy,mpvue的对比。个人认为,如果是新项目,且没有旧的 h5 项目迁移,则考虑用小程序原生开发,好处是相比于第三方框架,坑少。

    而如果有 老的 h5 项目是 vue 开发 或者 也有 h5 项目也需要小程序开发,则比较适合 wepy 或者 mpvue 来做迁移或者开发,近期看wepy几乎不更新了,所以推荐美团的mpvue。
    而如果如果团队前端强大,自己做一套框架也没问题。

029-86195145 180 6652 8545 西安嘉瑞德网络科技公司
工作时间:周一到周六 8:30-18:30
邮箱:2528823962@qq.com
QQ:2528823962
地址:陕西省西安市未央元朔路明丰伯马都A座10820室
  • 微信小程序制作微信二维码
    扫码咨询
Copyright © 2015 西安嘉瑞德网络科技有限公司 陕ICP备17015187号-1