腾讯云微信小程序解决方案:从 0 到 1 开发爆款小游戏

2024-11-09
来源:网络整理

今年可以说是小程序元年。各类游戏、商店、出行小程序如雨后春笋般涌现。我想在座的朋友都曾经使用过小程序。这么受欢迎的小程序是怎么开发出来的?今天我们邀请了来自腾讯云和加推科技的五位技术专家,与大家一站式解析如何从0到1低成本甚至0成本开发一款热门小游戏,让微信小程序开发真正实现。触手可及。

小程序解决方案

今天我给大家带来的主题是腾讯云微信小程序解决方案。我叫黄荣奎,是腾讯微信小程序解决方案负责人。我目前负责腾讯云上的小程序解决方案,以及如何快速帮助开发者完成开发并快速上线。

去年12月份我做分享的时候,大概有1/3的人用过小程序,现在应该更多了。我们简单回顾一下微信小程序的发展历史。微信小程序于9月份开始内测,并于2017年1月9日正式开放。大家真正接受的是2017年12月28日。微信小游戏开始开放的时间,也称为跳一跳,是直到那时,微信小程序才被大家广泛认可。

我简单分享一下微信小程序的分布情况。去年微信小程序的主要来源来自于工具部分。它类似于我们生活中常用的摩拜单车和滴滴打车,但现在流行的游戏和社交网络已经超越了它的市场份额。

那么小程序是如何实现的呢?

首先介绍一下小程序。这是官方的概念。小程序是一种新的开放能力。开发者可以快速开发小程序。小程序可以在微信中快速获取和传播。同时,他们拥有出色的使用体验。

那么小程序的实现原理是什么呢?

第一个是它的渲染层,这是他的。第二个是它的逻辑层,也就是说我们编写业务逻辑来实现登录和支付功能。第三个可以理解为微信原生能力。

那么它是如何实现这部分能力的呢?

主要负责渲染,微信底层提供了更多底层能力。我们可以看到微信为开发者提供了很多丰富的原生客户端以及自己的能力。例如,网络发起网络请求、存储和下载。存储包括文件的读写、音视频的读写。登录的是微信版本,形成关系连接。组件是我们常用的组件,包括提供给开发者的硬件,包括录音录像、摄像头、拍照、扫码等。

中间用什么来传递调用呢?

您可以看到这是通过事件传递并返回数据的。当用户在界面上进行一些操作时,会触发一些事件,这些事件会发送到,然后发送到业务逻辑。

那么小程序是如何渲染的呢?

有过小程序开发经验的人都知道,我们写了一个叫WXM2的东西,它的定义就是和业务打包在一起,形成一个小程序。

这是小程序的事件处理方法,你可以在里面看到。就是向View发送数据,监听View事件,触发View层,调用WX.api。

那么小程序为什么这么快呢?

我们来比较一下各种开发方法。我们来对比一下小程序的体验、开发难度以及对用户的消耗。之前H5是我们想到的跨平台解决方案。从开发角度来说,H5和小程序只需要了解前端开发即可。然而,原生开发的APP相对较大,并且具有特定平台性。 IOS和是不同的开发语言。如果一个团队开发一个小程序,必须有IOS团队和团队,开发成本会更高。

从用户体验上来说,小程序的体验只能说是更好。如果和原生APP相比,还是差一些。但与其他周边应用程序相比,小程序的速度和性能要快得多。而且从能力上来说,微信和小程序提供的一些功能可以操作一些硬件,但是外围APP有点困难。原生APP支持最好,可以操作非常底层的硬件。小程序可以通过搜索或附近推荐,因此具有更好的传播能力,支持在朋友圈分享和传播。与原生APP相比,沟通能力非常弱。对于某些使用场景,原生APP体验很差,小程序速度很快。例如,如果我在路上看到摩拜单车,我会直接用小程序扫描它。但还是需要下载APP。

腾讯云开发者工具解决方案

如果想要开发自己的小程序,通常需要有自己的服务器,还需要配置一些证书才能让它运行,所以每个开发者都必须了解服务器运维的知识。同时,部署服务器代码不方便,服务器端代码调试不直观。更多的时间花在了周边环境的部署上,而不是更多地关注业务的发展。

针对这种情况,我们做了这样的解决方案0。它的目的是解决服务器部署的问题,提前处理好服务器的平衡和扩展,把业务的基础服务代码写在服务器里,同时有基础的会话服务,这是我们早期的解决方案。然而,该解决方案也存在一定的问题。用户需要了解原理并自行部署服务器程序。架构过于专业化,不适合个人开发者,代码调试不方便。

我们和微信做了深度合作,开发了我们的,这和微信有很大的不同,特别是开发者用户可以上传服务器端代码,直接将代码上传到开发环境和生产环境。开发生产环境、域名、证书、数据库都是系统提前准备好的。用户编写代码后,可以直接上传代码。我们还集成了腾讯云现成的能力,比如渠道服务、对象存储、万向优图、智能语音等。

可以看到其实还有很多新功能,包括一键上传代码。你不需要了解服务器端知识,只需要了解开发环境和生产环境。我们的开发和线上环境是分开的,我们可以一键颁发和部署SSL证书。同时Node.js开发环境支持远程调试。该套装是免费的,欢迎大家来体验。

这是我们目前微信开发者工具的能力。右上角有一个腾讯云小图标。有了这个能力,你可以直接上传代码到开发环境,然后开始弹幕调试。可以在后台看到当前的环境变量,重启服务,停止服务,上传代码到生产环境。

腾讯云小程序解决方案完美解决了前面两个问题(需要你有一定的服务器运维知识,且部署服务器代码不方便)。那么还剩下两个问题。一是服务器端代码调试不直观。为了解决这个问题,我们开发了微信远程调试功能。当然,这是针对Nods.js版本的。有Nods.js开发经验的同学肯定会很熟悉。另一个是远程调试。这里的代码是服务器代码,可以看到断点和环境变量。

除了这些功能之外,用户框架也已经准备好了。用户只需使用腾讯云账号和小程序绑定的账号,然后创建小程序项目即可。

创建完成后,我们需要点击这里上传测试代码。这时候你的本地代码就会上传到服务器上。这里我们还为用户分配了一个域名。用户只需在小程序中进行配置即可。参观过。我们提供了很多能力,包括快速节点接口、登录、语音识别等,我们提供这些能力是为了保证用户在开发过程中可以方便的使用。

那么在此基础上我们做了什么呢?

接下来你还打算做什么?

目前版本控制的现状是这样的。用户开发小程序时,代码在客户端编辑,存储由用户自己存储。当然,这会带来很多缺点,比如代码版本管理。很多情况下无法在客户端进行版本比较。如果用户开发完成后需要部署服务器,则需要自行完成代码部署。

另一个缺点是初始化项目复杂,版本控制与服务器无关,代码无法回滚,开发者工具不支持GIT操作。针对这一情况,我们与微信进行了进一步的合作。结合腾讯云的TGIT,这是腾讯内部使用的代码管理。然后在部署方面,我们采用了程序集成的方式,也就是说我们可以直接使用开发者工具来发布到服务器上。这个服务器可以是用户自己的服务器,也可以是其他的服务器。

有了这些能力,我们就可以一键快速初始化代码。开发者可以快速查看、比对和回滚代码,准确发布和回滚代码,然后TGIT提供免费的私有仓库。

目前我们的小程序开发工具支持GS和PSP。后期可以支持C++、Java的发布和编译。

集成这种持续继承后,其优点包括发布前预编译代码、支持编译语言、支持定制化持续集成、发布前部署等。就是这样。谢谢大家。

质量保证

问:我刚才提到的发布涉及生产和开发。我自己的配置需要两台服务器吗?一是开发,二是生产。

答:您不需要手动执行此操作。您只需绑定腾讯云账号和小程序即可。该服务器是免费生成的。

问:这个服务器不需要付费吗?

答:目前,开发是免费的。生产环境最近可能会收费。以前是免费的。

问:我可以选择其他服务提供商提供的服务器吗?

A:您可能需要自己部署。我们将在后续运营和发布过程中允许用户自行部署服务器。

Q:如果我想使用一个小程序接收多种服务,我可以拥有服务器吗?该服务器可以支持多个小程序吗?

A:是的,你需要自己在代码中做一些兼容性。

问:我们现在有方便的示例或 SDK 吗?

答:还没有。

Q:现在需要自己调整代码逻辑吗?

答:好的,没错。

问:您好,请问IOS版小程序和版小程序的开发语言一样吗?

A:目前小程序其实是跨平台的,也就是说你写一段代码,就只有一份。它可以兼容IOS和平台。它的语言更偏向于前端开发。

问:我想问一个关于万向优图的问题。刚才你说可以识别身份证。我们的一些定制的可以被认可吗?也就是说,打印出来的箱子能被识别吗?

A:目前有打印识别,身份证识别只是其中之一。我可以帮你联系优图的同事,看看他们是否有这个能力。

问:我们OCR进行身份证识别时,是直接上传图片吗?

A:可以,直接上传,给个链接地址,界面就能识别了。

Q:我之前尝试过AI,需要转换图片。我刚刚了解到内部小程序可以这样转换。社区里有人表示这个​​功能还没有实现。以后会对外开放这个功能吗?

A:转换为64的方法应该有很多,如果没有开放,可以使用开放接口。

想要原版PPT吗?点击查看原文

分享