网站首页 > 博客文章 正文
来人人都是产品经理【起点学院】,BAT实战派产品总监手把手系统带你学产品、学运营。
微信要做应用号了,无需下载安装就可以使用的APP,一时间做传统APP的产品都是闻之色变。
可这应用号到底是什么鬼,居然能悬起如此大波澜?虽然应用号的很多细节没有透露,不过我们可以借此畅想一下它的实现以及可能用到的技术。
我们知道传统APP发展到今天已经过于笨重,作为一个独立的APP产品来说或许感受不到这点,而作为用户来说,APP之间的重叠区域越来越重。不同的APP除了能够提供自己独有的特色服务外,基本的能力都差不多,支付功能,消息推送,语音,扫码...
从理论上来讲,如果有一个APP拥有足够多的能力,且用户量足够大的话,其他APP只需要使用它的能力,然后提供自己特色的服务就足够了。微信做这个载体是很合适的。那么如何能在微信里面做应用呢,微信又可能用到哪些技术呢?
Js2Java。网页通过js接口调用微信的native能力。微信本身的基础能力已经很完善了,它只需要将自己的能力封装成js调用的接口,那么应用开发者们只需要做一些前端页面的开发,并在服务器上部署好自己的服务就好了。这种方式在微信里面本身也运作的比较好了,例如微信里的滴滴出行,它使用了微信的帐号,push,定位,支付等能力,完成近乎native的体验(我也因此删掉了滴滴出行的客户端)。(详见历史文章“网页和原生App如何交互”)
插件模式。这种方式允许开发者有更强的native界面控制能力,可以避免前端页面开发的界面手感不好的问题。同样,要做成插件模式也需要微信将它的能力封装成原生接口,开发者这针对这些接口进行应用开发,完成后的APP通过微信的插件框架加载起来。整个APP的下载,安装,更新通过插件体系可以做到无感知。不过这样开发者难免需要在不同的平台上编码了(Android,ios,wp)。(详见历史文章“妈妈再也不用担心我的需求赶不上版本发布了”)
React Native。这个是脸书搞出来的一套开发原生APP的框架,这套框架本身的核心就是Js2Java,它屏蔽了开发平台的差异,开发者只要会前端开发,就可以只写一套代码,通过这套框架构建不同平台的native界面。微信只需要把自己的能力封装到这套框架中供开发者调用,有趣的是整个APP的运作形式更接近与插件模式。简单说就是开发者用React Native的框架编使用前端语言编写代码,最后打包成不同平台的插件在微信发布即可。(详见历史文章“React Native-目前最火的前端技术”)
这三种方式都可以在微信里做一个免安装,随时可更新的APP。这对APP开发来说是好事(不需要自己再搞一套帐号体系,push系统,支付体系),一切能力由微信提供,APP只需要专注于提供特色的服务就足够了。
当然,或许微信这些已经都做好了,创建一个应用号对微信来说只需要在桌面创建一个快捷方式而已...
#专栏作家#
给产品经理讲技术,微信公众号(pm_teacher),人人都是产品经理专栏作家。资深程序猿,专注客户端开发若干年,对前端、后台技术略懂,热衷于对新的科技领域的探索。
猜你喜欢
- 2024-11-17 带你重新认识身边的前端工程师(前端工程师干什么的)
- 2024-11-17 Axure有哪些鲜为人知的使用技巧?(axure详细教程)
- 2024-11-17 英特尔 Evo 认证 PC 对决 M1 Macbook:x86 生态加持,Evo 更省心
- 2024-11-17 手把手教你搭建漂亮好看的个人网站
- 2024-11-17 高保真原型应保真到什么程度?(高保真原型应保真到什么程度才能用)
- 2024-11-17 如何提高npm 下载依赖过慢的问题(npm下载包)
- 2024-11-17 Linux 下源码安装Kong(基于数据Postgres)
- 2024-11-17 NPM升级package.json中的版本号以及更换数据源
- 2024-11-17 Node实战001:Windows搭建Node开发环境
- 2024-11-17 win10安装node、cnpm(WIN10安装不了金蝶客户端)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)